desc_struct
struct desc_struct *desc;
struct desc_struct *desc = get_current_gdt_rw();
struct desc_struct *gdt;
gdt = (struct desc_struct *)((void *)(gdt_ptr.address));
static inline void paravirt_alloc_ldt(struct desc_struct *ldt, unsigned entries)
static inline void paravirt_free_ldt(struct desc_struct *ldt, unsigned entries)
static inline void native_write_ldt_entry(struct desc_struct *ldt, int entry, const void *desc)
native_write_gdt_entry(struct desc_struct *gdt, int entry, const void *desc, int type)
static inline void fill_ldt(struct desc_struct *desc, const struct user_desc *info)
struct desc_struct *d = get_cpu_gdt_rw(cpu);
struct desc_struct *fixmap_gdt;
struct desc_struct *gdt = get_cpu_gdt_rw(cpu);
struct desc_struct *d = get_current_gdt_rw();
static inline unsigned long get_desc_base(const struct desc_struct *desc)
static inline void set_desc_base(struct desc_struct *desc, unsigned long base)
static inline unsigned long get_desc_limit(const struct desc_struct *desc)
static inline void set_desc_limit(struct desc_struct *desc, unsigned long limit)
struct desc_struct gdt[GDT_ENTRIES];
static inline struct desc_struct *get_cpu_gdt_rw(unsigned int cpu)
static inline struct desc_struct *get_current_gdt_rw(void)
static inline struct desc_struct *get_cpu_gdt_ro(int cpu)
return (struct desc_struct *)&get_cpu_entry_area(cpu)->gdt;
static inline struct desc_struct *get_current_gdt_ro(void)
struct desc_struct *entries;
static inline void paravirt_alloc_ldt(struct desc_struct *ldt, unsigned entries)
static inline void paravirt_free_ldt(struct desc_struct *ldt, unsigned entries)
static inline void write_ldt_entry(struct desc_struct *dt, int entry,
static inline void write_gdt_entry(struct desc_struct *dt, int entry,
void (*write_ldt_entry)(struct desc_struct *ldt, int entrynum,
void (*write_gdt_entry)(struct desc_struct *,
void (*alloc_ldt)(struct desc_struct *ldt, unsigned entries);
void (*free_ldt)(struct desc_struct *ldt, unsigned entries);
struct desc_struct tls_array[GDT_ENTRY_TLS_ENTRIES];
struct desc_struct desc)
struct desc_struct *gdt;
static struct desc_struct bad_bios_desc = GDT_ENTRY_INIT(DESC_DATA32_BIOS,
struct desc_struct save_desc_40;
struct desc_struct *gdt;
struct desc_struct save_desc_40;
struct desc_struct *gdt;
struct desc_struct d = { };
BUILD_BUG_ON(LDT_ENTRY_SIZE != sizeof(struct desc_struct));
unsigned long size = 5 * sizeof(struct desc_struct);
struct desc_struct ldt;
struct desc_struct d = GDT_ENTRY_INIT(DESC_DATA32,
struct desc_struct *desc;
const struct desc_struct *desc)
const struct desc_struct *tls;
struct desc_struct *desc = &t->tls_array[idx - GDT_ENTRY_TLS_MIN];
u16 index, struct desc_struct *desc)
struct desc_struct desc;
u16 selector, struct desc_struct *desc,
u16 selector, struct desc_struct *desc)
struct desc_struct *desc)
struct desc_struct seg_desc, old_desc;
struct desc_struct new_desc;
struct desc_struct new_desc;
setup_syscalls_segments(struct desc_struct *cs, struct desc_struct *ss)
struct desc_struct cs, ss;
struct desc_struct cs, ss;
struct desc_struct cs, ss;
struct desc_struct tr_seg;
ulong old_tss_base, struct desc_struct *new_desc)
ulong old_tss_base, struct desc_struct *new_desc)
struct desc_struct curr_tss_desc, next_tss_desc;
struct desc_struct task_gate_desc;
struct desc_struct old_desc, new_desc;
struct desc_struct ss;
struct desc_struct desc;
static u32 desc_limit_scaled(struct desc_struct *desc)
struct desc_struct desc;
struct desc_struct desc;
struct desc_struct desc;
struct desc_struct cs;
struct desc_struct *desc, u32 *base3, int seg);
struct desc_struct *desc, u32 base3, int seg);
struct desc_struct *table;
table = (struct desc_struct *)segment_base(ldt_selector);
struct desc_struct *desc, u32 *base3,
struct desc_struct *desc, u32 base3,
static bool get_desc(struct desc_struct *out, unsigned short sel)
*out = *(struct desc_struct *)(gdt_desc.address + desc_base);
struct desc_struct desc;
struct desc_struct desc;
struct desc_struct desc;
struct desc_struct code_descriptor;
static inline struct desc_struct FPU_get_ldt_descriptor(unsigned seg)
static struct desc_struct zero_desc;
struct desc_struct ret = zero_desc;
static inline unsigned long seg_get_base(struct desc_struct *d)
static inline unsigned long seg_get_limit(struct desc_struct *d)
static inline unsigned long seg_get_granularity(struct desc_struct *d)
static inline bool seg_expands_down(struct desc_struct *d)
static inline bool seg_execute_only(struct desc_struct *d)
static inline bool seg_writable(struct desc_struct *d)
struct desc_struct descriptor;
u32 offset = (index >> 3) * sizeof(struct desc_struct);
struct desc_struct *desc = get_cpu_gdt_rw(cpu);
dt[entry] = *(struct desc_struct *)desc;
struct desc_struct desc[3];
static void xen_alloc_ldt(struct desc_struct *ldt, unsigned entries)
static void xen_free_ldt(struct desc_struct *ldt, unsigned entries)
if (HYPERVISOR_set_gdt(&mfn, size / sizeof(struct desc_struct)))
if (HYPERVISOR_set_gdt(&mfn, size / sizeof(struct desc_struct)))
static inline bool desc_equal(const struct desc_struct *d1,
const struct desc_struct *d2)
struct desc_struct *shadow = &per_cpu(shadow_tls_desc, cpu).desc[i];
struct desc_struct *gdt;
static void xen_write_ldt_entry(struct desc_struct *dt, int entrynum,
static void xen_write_gdt_entry(struct desc_struct *dt, int entry,
static void __init xen_write_gdt_entry_boot(struct desc_struct *dt, int entry,
struct desc_struct *gdt;
static const struct desc_struct gdt[] = {
struct desc_struct d = {
struct desc_struct *gdt = get_cpu_gdt_rw(i);
struct desc_struct *gdt = get_cpu_gdt_rw((cpu)); \
static struct desc_struct bad_bios_desc = GDT_ENTRY_INIT(DESC_DATA32_BIOS,
struct desc_struct save_desc_40;
TP_PROTO(struct desc_struct *dt, int entrynum, u64 desc),
__field(struct desc_struct *, dt)
TP_PROTO(struct desc_struct *dt, int entrynum, const void *desc, int type),
__field(struct desc_struct *, dt)