/
usr
/
src
/
linux-headers-5.15.0-181
/
arch
/
x86
/
include
/
uapi
/
asm
/
/usr/src/linux-headers-5.15.0-181/arch/x86/include/uapi/asm
mkdir
upload
Name
Size
Mode
Actions
a.out.h
756
0644
edit
dl
rm
auxvec.h
546
0644
edit
dl
rm
bitsperlong.h
321
0644
edit
dl
rm
boot.h
338
0644
edit
dl
rm
bootparam.h
8233
0644
edit
dl
rm
byteorder.h
200
0644
edit
dl
rm
debugreg.h
3344
0644
edit
dl
rm
e820.h
2620
0644
edit
dl
rm
hwcap2.h
324
0644
edit
dl
rm
hw_breakpoint.h
69
0644
edit
dl
rm
ist.h
869
0644
edit
dl
rm
Kbuild
117
0644
edit
dl
rm
kvm.h
10858
0644
edit
dl
rm
kvm_para.h
4315
0644
edit
dl
rm
kvm_perf.h
388
0644
edit
dl
rm
ldt.h
1306
0644
edit
dl
rm
mce.h
1745
0644
edit
dl
rm
mman.h
1002
0644
edit
dl
rm
msgbuf.h
1079
0644
edit
dl
rm
msr.h
361
0644
edit
dl
rm
mtrr.h
4240
0644
edit
dl
rm
perf_regs.h
1403
0644
edit
dl
rm
posix_types.h
250
0644
edit
dl
rm
posix_types_32.h
765
0644
edit
dl
rm
posix_types_64.h
609
0644
edit
dl
rm
posix_types_x32.h
581
0644
edit
dl
rm
prctl.h
524
0644
edit
dl
rm
processor-flags.h
6638
0644
edit
dl
rm
ptrace-abi.h
2037
0644
edit
dl
rm
ptrace.h
1630
0644
edit
dl
rm
sembuf.h
1070
0644
edit
dl
rm
setup.h
6
0644
edit
dl
rm
sgx.h
5935
0644
edit
dl
rm
shmbuf.h
1258
0644
edit
dl
rm
sigcontext.h
9950
0644
edit
dl
rm
sigcontext32.h
271
0644
edit
dl
rm
siginfo.h
422
0644
edit
dl
rm
signal.h
2200
0644
edit
dl
rm
stat.h
3131
0644
edit
dl
rm
statfs.h
416
0644
edit
dl
rm
svm.h
8917
0644
edit
dl
rm
swab.h
769
0644
edit
dl
rm
ucontext.h
2117
0644
edit
dl
rm
unistd.h
664
0644
edit
dl
rm
vm86.h
3201
0644
edit
dl
rm
vmx.h
7383
0644
edit
dl
rm
vsyscall.h
278
0644
edit
dl
rm
Edit:
/usr/src/linux-headers-5.15.0-181/arch/x86/include/uapi/asm/ucontext.h
(2117B)
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ #ifndef _ASM_X86_UCONTEXT_H #define _ASM_X86_UCONTEXT_H /* * Indicates the presence of extended state information in the memory * layout pointed by the fpstate pointer in the ucontext's sigcontext * struct (uc_mcontext). */ #define UC_FP_XSTATE 0x1 #ifdef __x86_64__ /* * UC_SIGCONTEXT_SS will be set when delivering 64-bit or x32 signals on * kernels that save SS in the sigcontext. All kernels that set * UC_SIGCONTEXT_SS will correctly restore at least the low 32 bits of esp * regardless of SS (i.e. they implement espfix). * * Kernels that set UC_SIGCONTEXT_SS will also set UC_STRICT_RESTORE_SS * when delivering a signal that came from 64-bit code. * * Sigreturn restores SS as follows: * * if (saved SS is valid || UC_STRICT_RESTORE_SS is set || * saved CS is not 64-bit) * new SS = saved SS (will fail IRET and signal if invalid) * else * new SS = a flat 32-bit data segment * * This behavior serves three purposes: * * - Legacy programs that construct a 64-bit sigcontext from scratch * with zero or garbage in the SS slot (e.g. old CRIU) and call * sigreturn will still work. * * - Old DOSEMU versions sometimes catch a signal from a segmented * context, delete the old SS segment (with modify_ldt), and change * the saved CS to a 64-bit segment. These DOSEMU versions expect * sigreturn to send them back to 64-bit mode without killing them, * despite the fact that the SS selector when the signal was raised is * no longer valid. UC_STRICT_RESTORE_SS will be clear, so the kernel * will fix up SS for these DOSEMU versions. * * - Old and new programs that catch a signal and return without * modifying the saved context will end up in exactly the state they * started in, even if they were running in a segmented context when * the signal was raised.. Old kernels would lose track of the * previous SS value. */ #define UC_SIGCONTEXT_SS 0x2 #define UC_STRICT_RESTORE_SS 0x4 #endif #include <asm-generic/ucontext.h> #endif /* _ASM_X86_UCONTEXT_H */
Save
cmd:
run