Lines Matching defs:desc
15 static inline void fill_ldt(struct desc_struct *desc, const struct user_desc *info)
17 desc->limit0 = info->limit & 0x0ffff;
19 desc->base0 = (info->base_addr & 0x0000ffff);
20 desc->base1 = (info->base_addr & 0x00ff0000) >> 16;
22 desc->type = (info->read_exec_only ^ 1) << 1;
23 desc->type |= info->contents << 2;
25 desc->type |= 1;
27 desc->s = 1;
28 desc->dpl = 0x3;
29 desc->p = info->seg_not_present ^ 1;
30 desc->limit1 = (info->limit & 0xf0000) >> 16;
31 desc->avl = info->useable;
32 desc->d = info->seg_32bit;
33 desc->g = info->limit_in_pages;
35 desc->base2 = (info->base_addr & 0xff000000) >> 24;
40 desc->l = 0;
101 const u32 *desc = ptr;
103 return !(desc[0] | desc[1]);
121 #define write_ldt_entry(dt, entry, desc) native_write_ldt_entry(dt, entry, desc)
122 #define write_gdt_entry(dt, entry, desc, type) native_write_gdt_entry(dt, entry, desc, type)
141 static inline void native_write_ldt_entry(struct desc_struct *ldt, int entry, const void *desc)
143 memcpy(&ldt[entry], desc, 8);
147 native_write_gdt_entry(struct desc_struct *gdt, int entry, const void *desc, int type)
157 memcpy(&gdt[entry], desc, size);
163 struct ldttss_desc *desc = d;
165 memset(desc, 0, sizeof(*desc));
167 desc->limit0 = (u16) size;
168 desc->base0 = (u16) addr;
169 desc->base1 = (addr >> 16) & 0xFF;
170 desc->type = type;
171 desc->p = 1;
172 desc->limit1 = (size >> 16) & 0xF;
173 desc->base2 = (addr >> 24) & 0xFF;
175 desc->base3 = (u32) (addr >> 32);
361 static inline unsigned long get_desc_base(const struct desc_struct *desc)
363 return (unsigned)(desc->base0 | ((desc->base1) << 16) | ((desc->base2) << 24));
366 static inline void set_desc_base(struct desc_struct *desc, unsigned long base)
368 desc->base0 = base & 0xffff;
369 desc->base1 = (base >> 16) & 0xff;
370 desc->base2 = (base >> 24) & 0xff;
373 static inline unsigned long get_desc_limit(const struct desc_struct *desc)
375 return desc->limit0 | (desc->limit1 << 16);
378 static inline void set_desc_limit(struct desc_struct *desc, unsigned long limit)
380 desc->limit0 = limit & 0xffff;
381 desc->limit1 = (limit >> 16) & 0xf;