Home
last modified time | relevance | path

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

1234

/kernel/linux/linux-5.10/arch/x86/um/
H A Dldt.c45 * In skas mode, we hold our own ldt data in UML.
48 * for arch/i386/kernel/ldt.c
60 uml_ldt_t *ldt = &current->mm->context.arch.ldt; in read_ldt() local
62 if (!ldt->entry_count) in read_ldt()
68 mutex_lock(&ldt->lock); in read_ldt()
69 if (ldt->entry_count <= LDT_DIRECT_ENTRIES) { in read_ldt()
73 if (copy_to_user(ptr, ldt->u.entries, size)) in read_ldt()
79 for (i=0; i<ldt->entry_count/LDT_ENTRIES_PER_PAGE && bytecount; in read_ldt()
84 if (copy_to_user(ptr, ldt in read_ldt()
125 uml_ldt_t *ldt = &current->mm->context.arch.ldt; write_ldt() local
236 struct ldt_entry * ldt; ldt_get_host_info() local
[all...]
/kernel/linux/linux-6.6/arch/x86/um/
H A Dldt.c45 * In skas mode, we hold our own ldt data in UML.
48 * for arch/i386/kernel/ldt.c
60 uml_ldt_t *ldt = &current->mm->context.arch.ldt; in read_ldt() local
62 if (!ldt->entry_count) in read_ldt()
68 mutex_lock(&ldt->lock); in read_ldt()
69 if (ldt->entry_count <= LDT_DIRECT_ENTRIES) { in read_ldt()
73 if (copy_to_user(ptr, ldt->u.entries, size)) in read_ldt()
79 for (i=0; i<ldt->entry_count/LDT_ENTRIES_PER_PAGE && bytecount; in read_ldt()
84 if (copy_to_user(ptr, ldt in read_ldt()
125 uml_ldt_t *ldt = &current->mm->context.arch.ldt; write_ldt() local
236 struct ldt_entry * ldt; ldt_get_host_info() local
[all...]
/kernel/linux/linux-5.10/arch/x86/kernel/
H A Dldt.c26 #include <asm/ldt.h>
44 struct ldt_struct *ldt; in load_mm_ldt() local
47 ldt = READ_ONCE(mm->context.ldt); in load_mm_ldt()
50 * Any change to mm->context.ldt is followed by an IPI to all in load_mm_ldt()
63 if (unlikely(ldt)) { in load_mm_ldt()
65 if (WARN_ON_ONCE((unsigned long)ldt->slot > 1)) { in load_mm_ldt()
76 * If page table isolation is enabled, ldt->entries in load_mm_ldt()
79 * at ldt_slot_va(ldt->slot). in load_mm_ldt()
81 set_ldt(ldt_slot_va(ldt in load_mm_ldt()
288 map_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt, int slot) map_ldt_struct() argument
349 unmap_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt) unmap_ldt_struct() argument
381 map_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt, int slot) map_ldt_struct() argument
386 unmap_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt) unmap_ldt_struct() argument
408 finalize_ldt_struct(struct ldt_struct *ldt) finalize_ldt_struct() argument
413 install_ldt(struct mm_struct *mm, struct ldt_struct *ldt) install_ldt() argument
426 free_ldt_struct(struct ldt_struct *ldt) free_ldt_struct() argument
576 struct desc_struct ldt; write_ldt() local
[all...]
H A Dstep.c37 if (unlikely(!child->mm->context.ldt || in convert_ip_to_linear()
38 seg >= child->mm->context.ldt->nr_entries)) in convert_ip_to_linear()
41 desc = &child->mm->context.ldt->entries[seg]; in convert_ip_to_linear()
H A Dprocess_64.c384 struct ldt_struct *ldt; in x86_fsgsbase_read_task() local
392 ldt = task->mm->context.ldt; in x86_fsgsbase_read_task()
393 if (unlikely(!ldt || idx >= ldt->nr_entries)) in x86_fsgsbase_read_task()
396 base = get_desc_base(ldt->entries + idx); in x86_fsgsbase_read_task()
/kernel/linux/linux-6.6/arch/x86/kernel/
H A Dldt.c26 #include <asm/ldt.h>
44 struct ldt_struct *ldt; in load_mm_ldt() local
47 ldt = READ_ONCE(mm->context.ldt); in load_mm_ldt()
50 * Any change to mm->context.ldt is followed by an IPI to all in load_mm_ldt()
63 if (unlikely(ldt)) { in load_mm_ldt()
65 if (WARN_ON_ONCE((unsigned long)ldt->slot > 1)) { in load_mm_ldt()
76 * If page table isolation is enabled, ldt->entries in load_mm_ldt()
79 * at ldt_slot_va(ldt->slot). in load_mm_ldt()
81 set_ldt(ldt_slot_va(ldt in load_mm_ldt()
288 map_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt, int slot) map_ldt_struct() argument
349 unmap_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt) unmap_ldt_struct() argument
383 map_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt, int slot) map_ldt_struct() argument
388 unmap_ldt_struct(struct mm_struct *mm, struct ldt_struct *ldt) unmap_ldt_struct() argument
416 finalize_ldt_struct(struct ldt_struct *ldt) finalize_ldt_struct() argument
421 install_ldt(struct mm_struct *mm, struct ldt_struct *ldt) install_ldt() argument
434 free_ldt_struct(struct ldt_struct *ldt) free_ldt_struct() argument
584 struct desc_struct ldt; write_ldt() local
[all...]
H A Dstep.c37 if (unlikely(!child->mm->context.ldt || in convert_ip_to_linear()
38 seg >= child->mm->context.ldt->nr_entries)) in convert_ip_to_linear()
41 desc = &child->mm->context.ldt->entries[seg]; in convert_ip_to_linear()
H A Dprocess_64.c409 struct ldt_struct *ldt; in x86_fsgsbase_read_task() local
417 ldt = task->mm->context.ldt; in x86_fsgsbase_read_task()
418 if (unlikely(!ldt || idx >= ldt->nr_entries)) in x86_fsgsbase_read_task()
421 base = get_desc_base(ldt->entries + idx); in x86_fsgsbase_read_task()
/kernel/linux/linux-5.10/arch/alpha/kernel/
H A Dentry.S691 ldt $f0, 64($sp) # dont let "do_switch_stack" change fp state.
710 ldt $f30, 312($sp) # get saved fpcr
711 ldt $f0, 64($sp)
712 ldt $f1, 72($sp)
713 ldt $f2, 80($sp)
714 ldt $f3, 88($sp)
716 ldt $f4, 96($sp)
717 ldt $f5, 104($sp)
718 ldt $f6, 112($sp)
719 ldt
[all...]
/kernel/linux/linux-5.10/arch/x86/include/asm/
H A Ddesc.h6 #include <asm/ldt.h>
113 #define load_ldt(ldt) asm volatile("lldt %0"::"m" (ldt))
125 static inline void paravirt_alloc_ldt(struct desc_struct *ldt, unsigned entries) in paravirt_alloc_ldt() argument
129 static inline void paravirt_free_ldt(struct desc_struct *ldt, unsigned entries) in paravirt_free_ldt() argument
134 #define store_ldt(ldt) asm("sldt %0" : "=m"(ldt))
141 static inline void native_write_ldt_entry(struct desc_struct *ldt, int entry, const void *desc) in native_write_ldt_entry() argument
143 memcpy(&ldt[entry], desc, 8); in native_write_ldt_entry()
197 ldt_desc ldt; in native_set_ldt() local
202 &ldt, DESC_LDT); native_set_ldt() local
[all...]
H A Dproto.h5 #include <asm/ldt.h>
H A Dsuspend_32.h27 u16 ldt; member
/kernel/linux/linux-5.10/tools/testing/selftests/x86/
H A Dldt_gdt.c18 #include <asm/ldt.h>
63 static void check_invalid_segment(uint16_t index, int ldt) in check_invalid_segment() argument
66 uint32_t selector = (index << 3) | (ldt << 2) | 3; in check_invalid_segment()
83 (ldt ? "LDT" : "GDT"), index); in check_invalid_segment()
87 (ldt ? "LDT" : "GDT"), index); in check_invalid_segment()
91 static void check_valid_segment(uint16_t index, int ldt, in check_valid_segment() argument
96 uint32_t selector = (index << 3) | (ldt << 2) | 3; in check_valid_segment()
113 (ldt ? "LDT" : "GDT"), index); in check_valid_segment()
127 (ldt ? "LDT" : "GDT"), index, ar, expected_ar); in check_valid_segment()
131 (ldt in check_valid_segment()
139 install_valid_mode(const struct user_desc *d, uint32_t ar, bool oldmode, bool ldt) install_valid_mode() argument
[all...]
/kernel/linux/linux-6.6/tools/testing/selftests/x86/
H A Dldt_gdt.c18 #include <asm/ldt.h>
63 static void check_invalid_segment(uint16_t index, int ldt) in check_invalid_segment() argument
66 uint32_t selector = (index << 3) | (ldt << 2) | 3; in check_invalid_segment()
83 (ldt ? "LDT" : "GDT"), index); in check_invalid_segment()
87 (ldt ? "LDT" : "GDT"), index); in check_invalid_segment()
91 static void check_valid_segment(uint16_t index, int ldt, in check_valid_segment() argument
96 uint32_t selector = (index << 3) | (ldt << 2) | 3; in check_valid_segment()
113 (ldt ? "LDT" : "GDT"), index); in check_valid_segment()
127 (ldt ? "LDT" : "GDT"), index, ar, expected_ar); in check_valid_segment()
131 (ldt in check_valid_segment()
139 install_valid_mode(const struct user_desc *d, uint32_t ar, bool oldmode, bool ldt) install_valid_mode() argument
[all...]
/kernel/linux/linux-6.6/arch/x86/include/asm/
H A Ddesc.h6 #include <asm/ldt.h>
114 #define load_ldt(ldt) asm volatile("lldt %0"::"m" (ldt))
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))
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
203 &ldt, DESC_LDT); native_set_ldt() local
[all...]
H A Dproto.h5 #include <asm/ldt.h>
H A Dsuspend_32.h25 u16 ldt; member
/kernel/linux/linux-5.10/arch/x86/math-emu/
H 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()
/kernel/linux/linux-6.6/arch/x86/math-emu/
H 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()
/kernel/linux/linux-6.6/arch/x86/hyperv/
H A Dhv_vtl.c79 struct ldttss_desc *ldt; in hv_vtl_bringup_vcpu() local
92 ldt = (struct ldttss_desc *)(gdt + GDT_ENTRY_LDT); in hv_vtl_bringup_vcpu()
143 input->vp_context.ldtr.base = hv_vtl_system_desc_base(ldt); in hv_vtl_bringup_vcpu()
144 input->vp_context.ldtr.limit = hv_vtl_system_desc_limit(ldt); in hv_vtl_bringup_vcpu()
/kernel/linux/linux-5.10/arch/x86/um/asm/
H A Dmm_context.h12 #include <asm/ldt.h>
69 uml_ldt_t ldt; member
H A Dprocessor_32.h11 #include <asm/ldt.h>
/kernel/linux/linux-6.6/arch/x86/um/asm/
H A Dmm_context.h12 #include <asm/ldt.h>
67 uml_ldt_t ldt; member
/kernel/linux/linux-5.10/arch/x86/lib/
H A Dinsn-eval.c15 #include <asm/ldt.h>
611 struct ldt_struct *ldt; in get_desc() local
617 ldt = current->active_mm->context.ldt; in get_desc()
618 if (ldt && sel < ldt->nr_entries) { in get_desc()
619 *out = ldt->entries[sel]; in get_desc()
/kernel/linux/linux-6.6/arch/x86/lib/
H A Dinsn-eval.c15 #include <asm/ldt.h>
629 struct ldt_struct *ldt; in get_desc() local
635 ldt = current->active_mm->context.ldt; in get_desc()
636 if (ldt && sel < ldt->nr_entries) { in get_desc()
637 *out = ldt->entries[sel]; in get_desc()

Completed in 14 milliseconds

1234