/Linux-v5.15/Documentation/x86/x86_64/ |
D | fsgs.rst | 3 Using FS and GS segments in user space applications 22 always 0 to provide a full 64bit address space. The FS and GS segments are 25 Common FS and GS usage 37 The GS segment has no common use and can be used freely by 38 applications. GCC and Clang support GS based addressing via address space 41 Reading and writing the FS/GS base address 44 There exist two mechanisms to read and write the FS/GS base address: 50 Accessing FS/GS base with arch_prctl() 69 Accessing FS/GS base with the FSGSBASE instructions 73 instructions to access the FS and GS base registers directly from user [all …]
|
/Linux-v5.15/tools/testing/selftests/x86/ |
D | fsgsbase.c | 117 enum which_base { FS, GS }; enumerator 169 base = read_base(GS); in check_gs_value() 203 base = read_base(GS); in mov_0_gs() 384 if (read_base(GS) != local) { in set_gs_and_switch_to() 392 local = read_base(GS); in set_gs_and_switch_to() 410 base = read_base(GS); in set_gs_and_switch_to() 443 base = read_base(GS); in test_unexpected_base()
|
/Linux-v5.15/tools/perf/arch/x86/tests/ |
D | regs_load.S | 19 #define GS 15 * 8 macro 52 movq $0, GS(%rdi) 89 movl $0, GS(%edi)
|
/Linux-v5.15/arch/x86/um/ |
D | ptrace_64.c | 48 [GS >> 3] = HOST_GS, 81 case GS: in putreg() 157 case GS: in getreg()
|
D | user-offsets.c | 39 DEFINE(HOST_GS, GS); in foo() 68 DEFINE_LONGS(HOST_GS, GS); in foo()
|
D | ptrace_32.c | 66 [GS] = HOST_GS, 97 case GS: in putreg() 150 case GS: in getreg()
|
D | signal.c | 169 GETREG(GS, gs); in copy_sc_from_user() 248 PUTREG(GS, gs); in copy_sc_to_user()
|
/Linux-v5.15/arch/x86/kernel/ |
D | process_64.c | 151 GS enumerator 263 save_base_legacy(task, task->thread.gsindex, GS); in save_fsgs() 374 loadseg(GS, next->gsindex); in x86_fsgsbase_load() 383 next->gsindex, next->gsbase, GS); in x86_fsgsbase_load() 763 loadseg(GS, 0); in do_arch_prctl_64()
|
/Linux-v5.15/arch/x86/include/uapi/asm/ |
D | ptrace-abi.h | 17 #define GS 10 macro
|
/Linux-v5.15/Documentation/x86/ |
D | entry_64.rst | 90 entry interrupting kernel mode execution, then we know that the GS 97 for GS is the slower method: the RDMSR. 108 that absolutely need the more expensive check for the GS base - and we
|
/Linux-v5.15/arch/x86/um/shared/sysdep/ |
D | ptrace_64.h | 41 #define GS (HOST_GS * sizeof(long)) macro
|
/Linux-v5.15/arch/x86/um/os-Linux/ |
D | mcontext.c | 14 COPY_SEG(GS); COPY_SEG(FS); COPY_SEG(ES); COPY_SEG(DS); in get_regs_from_mc()
|
/Linux-v5.15/arch/arm64/boot/dts/amlogic/ |
D | meson-g12b-gsking-x.dts | 16 model = "Beelink GS-King X";
|
/Linux-v5.15/Documentation/admin-guide/hw-vuln/ |
D | spectre.rst | 87 a user GS. 163 the GS register to a user-space value, if the swapgs is speculatively 164 skipped, subsequent GS-related percpu accesses in the speculation 165 window will be done with the attacker-controlled GS value. This 178 swapgs, and then do a speculative percpu load using the user GS 185 speculatively do the swapgs, causing the user GS to get used for the
|
/Linux-v5.15/arch/um/os-Linux/skas/ |
D | process.c | 72 R(GS); in ptrace_reg_name()
|
/Linux-v5.15/arch/alpha/ |
D | Kconfig | 117 Wildfire AlphaServer GS 40/80/160/320 303 AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
|
/Linux-v5.15/Documentation/filesystems/ |
D | dax.rst | 105 setting can be set, cleared and/or queried using the `FS_IOC_FS`[`GS`]`ETXATTR` ioctl
|
/Linux-v5.15/arch/x86/lib/ |
D | x86-opcode-map.txt | 148 65: SEG=GS (Prefix) 518 a8: PUSH GS (d64) 519 a9: POP GS (d64)
|
/Linux-v5.15/tools/arch/x86/lib/ |
D | x86-opcode-map.txt | 148 65: SEG=GS (Prefix) 518 a8: PUSH GS (d64) 519 a9: POP GS (d64)
|
/Linux-v5.15/drivers/net/usb/ |
D | Kconfig | 585 iPhone (Original, 3G and 3GS) to your system.
|
/Linux-v5.15/arch/x86/kvm/vmx/ |
D | vmx.c | 444 VMX_SEGMENT_FIELD(GS),
|