Home
last modified time | relevance | path

Searched refs:ldt (Results 1 – 25 of 25) sorted by relevance

/arch/x86/kernel/
A Dldt.c47 ldt = READ_ONCE(mm->context.ldt); in load_mm_ldt()
63 if (unlikely(ldt)) { in load_mm_ldt()
81 set_ldt(ldt_slot_va(ldt->slot), ldt->nr_entries); in load_mm_ldt()
83 set_ldt(ldt->entries, ldt->nr_entries); in load_mm_ldt()
354 if (!ldt) in unmap_ldt_struct()
418 paravirt_alloc_ldt(ldt->entries, ldt->nr_entries); in finalize_ldt_struct()
426 smp_store_release(&mm->context.ldt, ldt); in install_ldt()
439 paravirt_free_ldt(ldt->entries, ldt->nr_entries); in free_ldt_struct()
444 kfree(ldt); in free_ldt_struct()
607 memset(&ldt, 0, sizeof(ldt)); in write_ldt()
[all …]
A Dstep.c39 if (unlikely(!child->mm->context.ldt || in convert_ip_to_linear()
40 seg >= child->mm->context.ldt->nr_entries)) in convert_ip_to_linear()
43 desc = &child->mm->context.ldt->entries[seg]; in convert_ip_to_linear()
A Dprocess_64.c434 struct ldt_struct *ldt; in x86_fsgsbase_read_task() local
442 ldt = task->mm->context.ldt; in x86_fsgsbase_read_task()
443 if (unlikely(!ldt || idx >= ldt->nr_entries)) in x86_fsgsbase_read_task()
446 base = get_desc_base(ldt->entries + idx); in x86_fsgsbase_read_task()
A Ddoublefault_32.c91 .ldt = 0,
A Dumip.c259 if (current->mm->context.ldt) in emulate_umip_insn()
A DMakefile59 obj-$(CONFIG_MODIFY_LDT_SYSCALL) += ldt.o
/arch/x86/include/asm/
A Ddesc.h114 #define load_ldt(ldt) asm volatile("lldt %0"::"m" (ldt)) argument
126 static inline void paravirt_alloc_ldt(struct desc_struct *ldt, unsigned entries) in paravirt_alloc_ldt() argument
130 static inline void paravirt_free_ldt(struct desc_struct *ldt, unsigned entries) in paravirt_free_ldt() argument
135 #define store_ldt(ldt) asm("sldt %0" : "=m"(ldt)) argument
142 static inline void native_write_ldt_entry(struct desc_struct *ldt, int entry, const void *desc) in native_write_ldt_entry() argument
144 memcpy(&ldt[entry], desc, 8); in native_write_ldt_entry()
198 ldt_desc ldt; in native_set_ldt() local
200 set_tssldt_descriptor(&ldt, (unsigned long)addr, DESC_LDT, in native_set_ldt()
203 &ldt, DESC_LDT); in native_set_ldt()
A Dsuspend_32.h21 u16 ldt; member
A Dsuspend_64.h50 u16 ldt; member
A Dmmu.h46 struct ldt_struct *ldt; member
A Dparavirt.h245 static inline void paravirt_alloc_ldt(struct desc_struct *ldt, unsigned entries) in paravirt_alloc_ldt() argument
247 PVOP_VCALL2(cpu.alloc_ldt, ldt, entries); in paravirt_alloc_ldt()
250 static inline void paravirt_free_ldt(struct desc_struct *ldt, unsigned entries) in paravirt_free_ldt() argument
252 PVOP_VCALL2(cpu.free_ldt, ldt, entries); in paravirt_free_ldt()
A Dparavirt_types.h73 void (*write_ldt_entry)(struct desc_struct *ldt, int entrynum,
79 void (*alloc_ldt)(struct desc_struct *ldt, unsigned entries);
80 void (*free_ldt)(struct desc_struct *ldt, unsigned entries);
A Dmmu_context.h57 mm->context.ldt = NULL; in init_new_context_ldt()
A Dprocessor.h302 unsigned short ldt, __ldth; member
A Dkvm_host.h2289 u16 ldt; in kvm_read_ldt() local
2290 asm("sldt %0" : "=g"(ldt)); in kvm_read_ldt()
2291 return ldt; in kvm_read_ldt()
/arch/x86/math-emu/
A Dfpu_system.h31 if (current->mm->context.ldt && seg < current->mm->context.ldt->nr_entries) in FPU_get_ldt_descriptor()
32 ret = current->mm->context.ldt->entries[seg]; in FPU_get_ldt_descriptor()
/arch/x86/hyperv/
A Dhv_vtl.c117 struct ldttss_desc *ldt; in hv_vtl_bringup_vcpu() local
130 ldt = (struct ldttss_desc *)(gdt + GDT_ENTRY_LDT); in hv_vtl_bringup_vcpu()
181 input->vp_context.ldtr.base = hv_vtl_system_desc_base(ldt); in hv_vtl_bringup_vcpu()
182 input->vp_context.ldtr.limit = hv_vtl_system_desc_limit(ldt); in hv_vtl_bringup_vcpu()
/arch/x86/kvm/
A Dtss.h57 u16 ldt; member
A Demulate.c2661 tss->ldt = get_segment_selector(ctxt, VCPU_SREG_LDTR); in save_state_to_tss16()
2685 set_segment_selector(ctxt, tss->ldt, VCPU_SREG_LDTR); in load_state_from_tss16()
2697 ret = __load_segment_descriptor(ctxt, tss->ldt, VCPU_SREG_LDTR, cpl, in load_state_from_tss16()
A Dx86.c11686 kvm_get_segment(vcpu, &sregs->ldt, VCPU_SREG_LDTR); in __get_sregs_common()
11932 kvm_set_segment(vcpu, &sregs->ldt, VCPU_SREG_LDTR); in __set_sregs_common()
/arch/x86/lib/
A Dinsn-eval.c630 struct ldt_struct *ldt; in get_desc() local
643 ldt = current->mm->context.ldt; in get_desc()
644 if (ldt && sel < ldt->nr_entries) { in get_desc()
645 *out = ldt->entries[sel]; in get_desc()
/arch/x86/xen/
A Denlighten_pv.c506 static void xen_alloc_ldt(struct desc_struct *ldt, unsigned entries) in xen_alloc_ldt() argument
523 set_aliased_prot(ldt + i, PAGE_KERNEL_RO); in xen_alloc_ldt()
526 static void xen_free_ldt(struct desc_struct *ldt, unsigned entries) in xen_free_ldt() argument
532 set_aliased_prot(ldt + i, PAGE_KERNEL); in xen_free_ldt()
/arch/x86/include/uapi/asm/
A Dkvm.h148 struct kvm_segment tr, ldt; member
159 struct kvm_segment tr, ldt; member
/arch/x86/events/
A Dcore.c2818 struct ldt_struct *ldt; in get_segment_base() local
2828 ldt = smp_load_acquire(&current->mm->context.ldt); in get_segment_base()
2829 if (!ldt || idx >= ldt->nr_entries) in get_segment_base()
2832 desc = &ldt->entries[idx]; in get_segment_base()
/arch/alpha/kernel/
A Dentry.S698 ldt $f0, FR(0) # don't let "__save_fpu" change fp state.

Completed in 103 milliseconds