/usr/src/linux-headers-5.15.0-181/arch/arm/include/asm
NameSizeModeActions
hardware/-0755rm
mach/-0755rm
vdso/-0755rm
xen/-0755rm
archrandom.h1920644editdlrm
arch_gicv3.h63270644editdlrm
arch_timer.h31240644editdlrm
arm-cci.h5350644editdlrm
asm-offsets.h350644editdlrm
assembler.h131060644editdlrm
atomic.h125360644editdlrm
auxvec.h290644editdlrm
barrier.h29100644editdlrm
bitops.h76270644editdlrm
bitrev.h4510644editdlrm
bL_switcher.h21860644editdlrm
bug.h26200644editdlrm
bugs.h2970644editdlrm
cache.h7940644editdlrm
cacheflush.h157940644editdlrm
cachetype.h27790644editdlrm
checksum.h40260644editdlrm
clocksource.h1610644editdlrm
cmpxchg.h63280644editdlrm
compiler.h9780644editdlrm
cp15.h33020644editdlrm
cpu.h3870644editdlrm
cpufeature.h12910644editdlrm
cpuidle.h16280644editdlrm
cputype.h87660644editdlrm
cti.h37030644editdlrm
dcc.h6230644editdlrm
delay.h29030644editdlrm
device.h6360644editdlrm
div64.h26400644editdlrm
dma-direct.h13410644editdlrm
dma-iommu.h9080644editdlrm
dma-mapping.h47140644editdlrm
dma.h42870644editdlrm
dmi.h3780644editdlrm
domain.h37510644editdlrm
ecard.h61190644editdlrm
edac.h9950644editdlrm
efi.h25010644editdlrm
elf.h46360644editdlrm
entry-macro-multi.S3360644editdlrm
exception.h4160644editdlrm
fb.h3750644editdlrm
fiq.h13910644editdlrm
firmware.h17280644editdlrm
fixmap.h18810644editdlrm
floppy.h23180644editdlrm
fncpy.h25520644editdlrm
fpstate.h14780644editdlrm
ftrace.h18210644editdlrm
futex.h43570644editdlrm
glue-cache.h35150644editdlrm
glue-df.h21100644editdlrm
glue-pf.h10050644editdlrm
glue-proc.h44240644editdlrm
glue.h6130644editdlrm
gpio.h6150644editdlrm
hardirq.h2460644editdlrm
highmem.h23790644editdlrm
hugetlb-3level.h6900644editdlrm
hugetlb.h5130644editdlrm
hwcap.h3780644editdlrm
hw_breakpoint.h38110644editdlrm
hw_irq.h3490644editdlrm
hypervisor.h2240644editdlrm
ide.h5660644editdlrm
idmap.h3590644editdlrm
insn.h6360644editdlrm
io.h150270644editdlrm
irq.h8870644editdlrm
irqflags.h39690644editdlrm
irq_work.h2340644editdlrm
jump_label.h10090644editdlrm
kasan.h7080644editdlrm
kasan_def.h27260644editdlrm
Kbuild1860644editdlrm
kexec-internal.h2720644editdlrm
kexec.h22550644editdlrm
kgdb.h27830644editdlrm
kprobes.h22480644editdlrm
krait-l2-accessors.h2310644editdlrm
linkage.h2160644editdlrm
mc146818rtc.h7200644editdlrm
mcpm.h120610644editdlrm
mcs_spinlock.h5700644editdlrm
memblock.h2480644editdlrm
memory.h109450644editdlrm
mmu.h9530644editdlrm
mmu_context.h34610644editdlrm
module.h12160644editdlrm
module.lds.h1340644editdlrm
mpu.h33000644editdlrm
mtd-xip.h5200644editdlrm
neon.h10410644editdlrm
nwflash.h1950644editdlrm
opcodes-sec.h3500644editdlrm
opcodes-virt.h6840644editdlrm
opcodes.h81180644editdlrm
outercache.h32680644editdlrm
page-nommu.h8110644editdlrm
page.h34480644editdlrm
paravirt.h4770644editdlrm
patch.h4380644editdlrm
pci.h7940644editdlrm
percpu.h10690644editdlrm
perf_event.h7080644editdlrm
pgalloc.h33730644editdlrm
pgtable-2level-hwdef.h33850644editdlrm
pgtable-2level-types.h12780644editdlrm
pgtable-2level.h86450644editdlrm
pgtable-3level-hwdef.h34350644editdlrm
pgtable-3level-types.h13310644editdlrm
pgtable-3level.h81480644editdlrm
pgtable-hwdef.h3210644editdlrm
pgtable-nommu.h19790644editdlrm
pgtable.h104920644editdlrm
probes.h13320644editdlrm
proc-fns.h47540644editdlrm
processor.h31660644editdlrm
procinfo.h11520644editdlrm
prom.h5520644editdlrm
psci.h3790644editdlrm
ptdump.h9230644editdlrm
ptrace.h48410644editdlrm
seccomp.h2810644editdlrm
sections.h6220644editdlrm
secure_cntvoff.h1520644editdlrm
setup.h7730644editdlrm
set_memory.h7200644editdlrm
shmparam.h4190644editdlrm
signal.h5590644editdlrm
smp.h28390644editdlrm
smp_plat.h25350644editdlrm
smp_scu.h13520644editdlrm
smp_twd.h5900644editdlrm
sparsemem.h7160644editdlrm
spectre.h9060644editdlrm
spinlock.h56450644editdlrm
spinlock_types.h5410644editdlrm
stackprotector.h13570644editdlrm
stacktrace.h7420644editdlrm
string.h21650644editdlrm
suspend.h3690644editdlrm
swab.h10050644editdlrm
switch_to.h10580644editdlrm
sync_bitops.h15140644editdlrm
syscall.h23470644editdlrm
system_info.h7630644editdlrm
system_misc.h10050644editdlrm
tcm.h9250644editdlrm
therm.h6550644editdlrm
thread_info.h49740644editdlrm
thread_notify.h10860644editdlrm
timex.h4310644editdlrm
tlb.h14420644editdlrm
tlbflush.h179090644editdlrm
tls.h31660644editdlrm
topology.h11390644editdlrm
traps.h9110644editdlrm
uaccess-asm.h27030644editdlrm
uaccess.h174310644editdlrm
ucontext.h27450644editdlrm
unified.h9790644editdlrm
unistd.h15780644editdlrm
unwind.h11730644editdlrm
uprobes.h9480644editdlrm
user.h43020644editdlrm
v7m.h32330644editdlrm
vdso.h5070644editdlrm
vdso_datapage.h4440644editdlrm
vermagic.h8000644editdlrm
vfp.h29690644editdlrm
vfpmacros.h20740644editdlrm
vga.h3050644editdlrm
virt.h18550644editdlrm
vmalloc.h870644editdlrm
vmlinux.lds.h44900644editdlrm
word-at-a-time.h21280644editdlrm
xor.h52040644editdlrm
Edit: /usr/src/linux-headers-5.15.0-181/arch/arm/include/asm/thread_info.h (4974B)
/* SPDX-License-Identifier: GPL-2.0-only */ /* * arch/arm/include/asm/thread_info.h * * Copyright (C) 2002 Russell King. */ #ifndef __ASM_ARM_THREAD_INFO_H #define __ASM_ARM_THREAD_INFO_H #ifdef __KERNEL__ #include #include #include #ifdef CONFIG_KASAN /* * KASan uses a lot of extra stack space so the thread size order needs to * be increased. */ #define THREAD_SIZE_ORDER 2 #else #define THREAD_SIZE_ORDER 1 #endif #define THREAD_SIZE (PAGE_SIZE << THREAD_SIZE_ORDER) #define THREAD_START_SP (THREAD_SIZE - 8) #ifndef __ASSEMBLY__ struct task_struct; #include struct cpu_context_save { __u32 r4; __u32 r5; __u32 r6; __u32 r7; __u32 r8; __u32 r9; __u32 sl; __u32 fp; __u32 sp; __u32 pc; __u32 extra[2]; /* Xscale 'acc' register, etc */ }; /* * low level task data that entry.S needs immediate access to. * __switch_to() assumes cpu_context follows immediately after cpu_domain. */ struct thread_info { unsigned long flags; /* low level flags */ int preempt_count; /* 0 => preemptable, <0 => bug */ struct task_struct *task; /* main task structure */ __u32 cpu; /* cpu */ __u32 cpu_domain; /* cpu domain */ #ifdef CONFIG_STACKPROTECTOR_PER_TASK unsigned long stack_canary; #endif struct cpu_context_save cpu_context; /* cpu context */ __u32 abi_syscall; /* ABI type and syscall nr */ __u8 used_cp[16]; /* thread used copro */ unsigned long tp_value[2]; /* TLS registers */ union fp_state fpstate __attribute__((aligned(8))); union vfp_state vfpstate; #ifdef CONFIG_ARM_THUMBEE unsigned long thumbee_state; /* ThumbEE Handler Base register */ #endif }; #define INIT_THREAD_INFO(tsk) \ { \ .task = &tsk, \ .flags = 0, \ .preempt_count = INIT_PREEMPT_COUNT, \ } /* * how to get the thread information struct from C */ static inline struct thread_info *current_thread_info(void) __attribute_const__; static inline struct thread_info *current_thread_info(void) { return (struct thread_info *) (current_stack_pointer & ~(THREAD_SIZE - 1)); } #define thread_saved_pc(tsk) \ ((unsigned long)(task_thread_info(tsk)->cpu_context.pc)) #define thread_saved_sp(tsk) \ ((unsigned long)(task_thread_info(tsk)->cpu_context.sp)) #ifndef CONFIG_THUMB2_KERNEL #define thread_saved_fp(tsk) \ ((unsigned long)(task_thread_info(tsk)->cpu_context.fp)) #else #define thread_saved_fp(tsk) \ ((unsigned long)(task_thread_info(tsk)->cpu_context.r7)) #endif extern void iwmmxt_task_disable(struct thread_info *); extern void iwmmxt_task_copy(struct thread_info *, void *); extern void iwmmxt_task_restore(struct thread_info *, void *); extern void iwmmxt_task_release(struct thread_info *); extern void iwmmxt_task_switch(struct thread_info *); extern void vfp_sync_hwstate(struct thread_info *); extern void vfp_flush_hwstate(struct thread_info *); struct user_vfp; struct user_vfp_exc; extern int vfp_preserve_user_clear_hwstate(struct user_vfp *, struct user_vfp_exc *); extern int vfp_restore_user_hwstate(struct user_vfp *, struct user_vfp_exc *); #endif /* * thread information flags: * TIF_USEDFPU - FPU was used by this task this quantum (SMP) * TIF_POLLING_NRFLAG - true if poll_idle() is polling TIF_NEED_RESCHED * * Any bit in the range of 0..15 will cause do_work_pending() to be invoked. */ #define TIF_SIGPENDING 0 /* signal pending */ #define TIF_NEED_RESCHED 1 /* rescheduling necessary */ #define TIF_NOTIFY_RESUME 2 /* callback before returning to user */ #define TIF_UPROBE 3 /* breakpointed or singlestepping */ #define TIF_NOTIFY_SIGNAL 4 /* signal notifications exist */ #define TIF_USING_IWMMXT 17 #define TIF_MEMDIE 18 /* is terminating due to OOM killer */ #define TIF_RESTORE_SIGMASK 19 #define TIF_SYSCALL_TRACE 20 /* syscall trace active */ #define TIF_SYSCALL_AUDIT 21 /* syscall auditing active */ #define TIF_SYSCALL_TRACEPOINT 22 /* syscall tracepoint instrumentation */ #define TIF_SECCOMP 23 /* seccomp syscall filtering active */ #define _TIF_SIGPENDING (1 << TIF_SIGPENDING) #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED) #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) #define _TIF_UPROBE (1 << TIF_UPROBE) #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE) #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) #define _TIF_SYSCALL_TRACEPOINT (1 << TIF_SYSCALL_TRACEPOINT) #define _TIF_SECCOMP (1 << TIF_SECCOMP) #define _TIF_NOTIFY_SIGNAL (1 << TIF_NOTIFY_SIGNAL) #define _TIF_USING_IWMMXT (1 << TIF_USING_IWMMXT) /* Checks for any syscall work in entry-common.S */ #define _TIF_SYSCALL_WORK (_TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT | \ _TIF_SYSCALL_TRACEPOINT | _TIF_SECCOMP) /* * Change these and you break ASM code in entry-common.S */ #define _TIF_WORK_MASK (_TIF_NEED_RESCHED | _TIF_SIGPENDING | \ _TIF_NOTIFY_RESUME | _TIF_UPROBE | \ _TIF_NOTIFY_SIGNAL) #endif /* __KERNEL__ */ #endif /* __ASM_ARM_THREAD_INFO_H */