/
usr
/
src
/
linux-headers-5.15.0-181
/
arch
/
powerpc
/
include
/
uapi
/
asm
/
/usr/src/linux-headers-5.15.0-181/arch/powerpc/include/uapi/asm
mkdir
upload
Name
Size
Mode
Actions
auxvec.h
1774
0644
edit
dl
rm
bitsperlong.h
312
0644
edit
dl
rm
bootx.h
4417
0644
edit
dl
rm
byteorder.h
550
0644
edit
dl
rm
cputable.h
2399
0644
edit
dl
rm
eeh.h
2233
0644
edit
dl
rm
elf.h
13356
0644
edit
dl
rm
epapr_hcalls.h
4274
0644
edit
dl
rm
errno.h
278
0644
edit
dl
rm
fcntl.h
367
0644
edit
dl
rm
ioctl.h
302
0644
edit
dl
rm
ioctls.h
4359
0644
edit
dl
rm
ipcbuf.h
1057
0644
edit
dl
rm
Kbuild
89
0644
edit
dl
rm
kvm.h
24887
0644
edit
dl
rm
kvm_para.h
2793
0644
edit
dl
rm
mman.h
1294
0644
edit
dl
rm
msgbuf.h
1159
0644
edit
dl
rm
nvram.h
2077
0644
edit
dl
rm
opal-prd.h
1782
0644
edit
dl
rm
papr_pdsm.h
5287
0644
edit
dl
rm
perf_event.h
565
0644
edit
dl
rm
perf_regs.h
2343
0644
edit
dl
rm
posix_types.h
594
0644
edit
dl
rm
ps3fb.h
1781
0644
edit
dl
rm
ptrace.h
7787
0644
edit
dl
rm
sembuf.h
1144
0644
edit
dl
rm
setup.h
203
0644
edit
dl
rm
shmbuf.h
1661
0644
edit
dl
rm
sigcontext.h
4444
0644
edit
dl
rm
signal.h
2504
0644
edit
dl
rm
socket.h
600
0644
edit
dl
rm
spu_info.h
832
0644
edit
dl
rm
stat.h
2318
0644
edit
dl
rm
swab.h
602
0644
edit
dl
rm
termbits.h
5224
0644
edit
dl
rm
termios.h
1712
0644
edit
dl
rm
tm.h
734
0644
edit
dl
rm
types.h
1319
0644
edit
dl
rm
ucontext.h
975
0644
edit
dl
rm
unistd.h
577
0644
edit
dl
rm
vas-api.h
664
0644
edit
dl
rm
Edit:
/usr/src/linux-headers-5.15.0-181/arch/powerpc/include/uapi/asm/sigcontext.h
(4444B)
/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */ #ifndef _ASM_POWERPC_SIGCONTEXT_H #define _ASM_POWERPC_SIGCONTEXT_H /* * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version * 2 of the License, or (at your option) any later version. */ #include <linux/compiler.h> #include <asm/ptrace.h> #ifdef __powerpc64__ #include <asm/elf.h> #endif struct sigcontext { unsigned long _unused[4]; int signal; #ifdef __powerpc64__ int _pad0; #endif unsigned long handler; unsigned long oldmask; #ifdef __KERNEL__ struct user_pt_regs __user *regs; #else struct pt_regs *regs; #endif #ifdef __powerpc64__ elf_gregset_t gp_regs; elf_fpregset_t fp_regs; /* * To maintain compatibility with current implementations the sigcontext is * extended by appending a pointer (v_regs) to a quadword type (elf_vrreg_t) * followed by an unstructured (vmx_reserve) field of 101 doublewords. This * allows the array of vector registers to be quadword aligned independent of * the alignment of the containing sigcontext or ucontext. It is the * responsibility of the code setting the sigcontext to set this pointer to * either NULL (if this processor does not support the VMX feature) or the * address of the first quadword within the allocated (vmx_reserve) area. * * The pointer (v_regs) of vector type (elf_vrreg_t) is type compatible with * an array of 34 quadword entries (elf_vrregset_t). The entries with * indexes 0-31 contain the corresponding vector registers. The entry with * index 32 contains the vscr as the last word (offset 12) within the * quadword. This allows the vscr to be stored as either a quadword (since * it must be copied via a vector register to/from storage) or as a word. * The entry with index 33 contains the vrsave as the first word (offset 0) * within the quadword. * * Part of the VSX data is stored here also by extending vmx_restore * by an additional 32 double words. Architecturally the layout of * the VSR registers and how they overlap on top of the legacy FPR and * VR registers is shown below: * * VSR doubleword 0 VSR doubleword 1 * ---------------------------------------------------------------- * VSR[0] | FPR[0] | | * ---------------------------------------------------------------- * VSR[1] | FPR[1] | | * ---------------------------------------------------------------- * | ... | | * | ... | | * ---------------------------------------------------------------- * VSR[30] | FPR[30] | | * ---------------------------------------------------------------- * VSR[31] | FPR[31] | | * ---------------------------------------------------------------- * VSR[32] | VR[0] | * ---------------------------------------------------------------- * VSR[33] | VR[1] | * ---------------------------------------------------------------- * | ... | * | ... | * ---------------------------------------------------------------- * VSR[62] | VR[30] | * ---------------------------------------------------------------- * VSR[63] | VR[31] | * ---------------------------------------------------------------- * * FPR/VSR 0-31 doubleword 0 is stored in fp_regs, and VMX/VSR 32-63 * is stored at the start of vmx_reserve. vmx_reserve is extended for * backwards compatility to store VSR 0-31 doubleword 1 after the VMX * registers and vscr/vrsave. */ elf_vrreg_t __user *v_regs; long vmx_reserve[ELF_NVRREG + ELF_NVRREG + 1 + 32]; #endif }; #endif /* _ASM_POWERPC_SIGCONTEXT_H */
Save
cmd:
run