Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
desc.h File Reference
#include <asm/desc_defs.h>
#include <asm/ldt.h>
#include <asm/mmu.h>
#include <linux/smp.h>
#include <linux/percpu.h>

Go to the source code of this file.

Data Structures

struct  gdt_page
 

Macros

#define load_TR_desc()   native_load_tr_desc()
 
#define load_gdt(dtr)   native_load_gdt(dtr)
 
#define load_idt(dtr)   native_load_idt(dtr)
 
#define load_tr(tr)   asm volatile("ltr %0"::"m" (tr))
 
#define load_ldt(ldt)   asm volatile("lldt %0"::"m" (ldt))
 
#define store_gdt(dtr)   native_store_gdt(dtr)
 
#define store_idt(dtr)   native_store_idt(dtr)
 
#define store_tr(tr)   (tr = native_store_tr())
 
#define load_TLS(t, cpu)   native_load_tls(t, cpu)
 
#define set_ldt   native_set_ldt
 
#define write_ldt_entry(dt, entry, desc)   native_write_ldt_entry(dt, entry, desc)
 
#define write_gdt_entry(dt, entry, desc, type)   native_write_gdt_entry(dt, entry, desc, type)
 
#define write_idt_entry(dt, entry, g)   native_write_idt_entry(dt, entry, g)
 
#define store_ldt(ldt)   asm("sldt %0" : "=m"(ldt))
 
#define set_tss_desc(cpu, addr)   __set_tss_desc(cpu, GDT_ENTRY_TSS, addr)
 
#define _LDT_empty(info)
 
#define LDT_empty(info)   (_LDT_empty(info))
 

Functions

struct gdt_page __attribute__ ((aligned(PAGE_SIZE)))
 
 DECLARE_PER_CPU_PAGE_ALIGNED (struct gdt_page, gdt_page)
 

Variables

struct desc_ptr idt_descr
 
gate_desc idt_table []
 
struct desc_ptr nmi_idt_descr
 
gate_desc nmi_idt_table []
 
struct desc_struct gdt [GDT_ENTRIES]
 
int first_system_vector
 
unsigned long used_vectors []
 

Macro Definition Documentation

#define _LDT_empty (   info)
Value:
((info)->base_addr == 0 && \
(info)->limit == 0 && \
(info)->contents == 0 && \
(info)->read_exec_only == 1 && \
(info)->seg_32bit == 0 && \
(info)->limit_in_pages == 0 && \
(info)->seg_not_present == 1 && \
(info)->useable == 0)

Definition at line 254 of file desc.h.

#define LDT_empty (   info)    (_LDT_empty(info))

Definition at line 267 of file desc.h.

#define load_gdt (   dtr)    native_load_gdt(dtr)

Definition at line 92 of file desc.h.

#define load_idt (   dtr)    native_load_idt(dtr)

Definition at line 93 of file desc.h.

#define load_ldt (   ldt)    asm volatile("lldt %0"::"m" (ldt))

Definition at line 95 of file desc.h.

#define load_TLS (   t,
  cpu 
)    native_load_tls(t, cpu)

Definition at line 101 of file desc.h.

#define load_tr (   tr)    asm volatile("ltr %0"::"m" (tr))

Definition at line 94 of file desc.h.

#define load_TR_desc ( )    native_load_tr_desc()

Definition at line 91 of file desc.h.

#define set_ldt   native_set_ldt

Definition at line 102 of file desc.h.

#define set_tss_desc (   cpu,
  addr 
)    __set_tss_desc(cpu, GDT_ENTRY_TSS, addr)

Definition at line 193 of file desc.h.

#define store_gdt (   dtr)    native_store_gdt(dtr)

Definition at line 97 of file desc.h.

#define store_idt (   dtr)    native_store_idt(dtr)

Definition at line 98 of file desc.h.

#define store_ldt (   ldt)    asm("sldt %0" : "=m"(ldt))

Definition at line 117 of file desc.h.

#define store_tr (   tr)    (tr = native_store_tr())

Definition at line 99 of file desc.h.

#define write_gdt_entry (   dt,
  entry,
  desc,
  type 
)    native_write_gdt_entry(dt, entry, desc, type)

Definition at line 105 of file desc.h.

#define write_idt_entry (   dt,
  entry,
  g 
)    native_write_idt_entry(dt, entry, g)

Definition at line 106 of file desc.h.

#define write_ldt_entry (   dt,
  entry,
  desc 
)    native_write_ldt_entry(dt, entry, desc)

Definition at line 104 of file desc.h.

Function Documentation

DECLARE_PER_CPU_PAGE_ALIGNED ( struct gdt_page  ,
gdt_page   
)

Variable Documentation

int first_system_vector

Definition at line 183 of file apic.c.

Definition at line 45 of file desc.h.

struct desc_ptr idt_descr
gate_desc idt_table[]
struct desc_ptr nmi_idt_descr
gate_desc nmi_idt_table[]
unsigned long used_vectors[]