Home
last modified time | relevance | path

Searched refs:GS (Results 1 – 17 of 17) sorted by relevance

/linux/Documentation/arch/x86/x86_64/
H A Dfsgs.rst3 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 …]
H A Dfred.rst32 instruction (LKGS) for managing the state of the GS segment register.
71 LKGS behaves like the MOV to GS instruction except that it loads the
72 base address into the IA32_KERNEL_GS_BASE MSR instead of the GS
74 mucking with kernel GS, i.e., an operating system can always operate
75 with its own GS base address.
78 of the GS base address and that of the IA32_KERNEL_GS_BASE MSR, plus
/linux/tools/perf/arch/x86/tests/
H A Dregs_load.S19 #define GS 15 * 8 macro
52 movq $0, GS(%rdi)
89 movl $0, GS(%edi)
/linux/arch/x86/um/
H A Dptrace_32.c42 [GS] = HOST_GS,
73 case GS: in putreg()
126 case GS: in getreg()
H A Dptrace_64.c50 [GS >> 3] = HOST_GS,
83 case GS: in putreg()
159 case GS: in getreg()
H A Duser-offsets.c38 DEFINE(HOST_GS, GS); in foo()
62 DEFINE_LONGS(HOST_GS, GS); in foo()
H A Dsignal.c50 GETREG(GS, gs); in copy_sc_from_user()
122 PUTREG(GS, gs); in copy_sc_to_user()
/linux/arch/arm/boot/dts/microchip/
H A Dlan966x-kontron-kswitch-d10-mmt-6g-2gs.dts3 * Device Tree file for the Kontron KSwitch D10 MMT 6G-2GS
10 model = "Kontron KSwitch D10 MMT 6G-2GS";
/linux/Documentation/arch/x86/
H A Dentry_64.rst90 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/arch/x86/um/shared/sysdep/
H A Dptrace_64.h39 #define GS (HOST_GS * sizeof(long)) macro
/linux/arch/x86/um/os-Linux/
H A Dmcontext.c19 COPY_SEG(GS); COPY_SEG(FS); COPY_SEG(ES); COPY_SEG(DS); in get_regs_from_mc()
63 COPY_SEG(GS); COPY_SEG(FS); COPY_SEG(ES); COPY_SEG(DS); in get_mc_from_regs()
/linux/Documentation/admin-guide/hw-vuln/
H A Dspectre.rst87 a user GS.
175 the GS register to a user-space value, if the swapgs is speculatively
176 skipped, subsequent GS-related percpu accesses in the speculation
177 window will be done with the attacker-controlled GS value. This
190 swapgs, and then do a speculative percpu load using the user GS
197 speculatively do the swapgs, causing the user GS to get used for the
/linux/arch/um/os-Linux/skas/
H A Dprocess.c83 R(GS); in ptrace_reg_name()
/linux/tools/arch/x86/lib/
H A Dx86-opcode-map.txt158 65: SEG=GS (Prefix)
528 a8: PUSH GS (d64)
529 a9: POP GS (d64)
/linux/arch/x86/lib/
H A Dx86-opcode-map.txt158 65: SEG=GS (Prefix)
528 a8: PUSH GS (d64)
529 a9: POP GS (d64)
/linux/tools/arch/x86/kcpuid/
H A Dcpuid.csv281 0x7, 1, eax, 18, lkgs , LKGS: Load 'kernel' (userspace) GS
1013 0x80000021, 0, eax, 1, fsgs_non_serializing , WRMSR to {FS,GS,KERNEL_GS}_BASE is non-serializing
/linux/arch/x86/kvm/vmx/
H A Dvmx.c614 VMX_SEGMENT_FIELD(GS),