Searched refs:kuap (Results 1 - 14 of 14) sorted by relevance
/kernel/linux/linux-6.6/arch/powerpc/include/asm/book3s/32/ |
H A D | kup.h | 60 unsigned long kuap = current->thread.kuap; in __kuap_save_and_lock() local 62 regs->kuap = kuap; in __kuap_save_and_lock() 63 if (unlikely(kuap == KUAP_NONE)) in __kuap_save_and_lock() 66 current->thread.kuap = KUAP_NONE; in __kuap_save_and_lock() 67 kuap_lock_one(kuap); in __kuap_save_and_lock() 75 static __always_inline void __kuap_kernel_restore(struct pt_regs *regs, unsigned long kuap) in __kuap_kernel_restore() argument 77 if (unlikely(kuap != KUAP_NONE)) { in __kuap_kernel_restore() 78 current->thread.kuap in __kuap_kernel_restore() 92 unsigned long kuap = current->thread.kuap; __kuap_get_and_assert_locked() local 114 u32 kuap = current->thread.kuap; prevent_user_access() local 148 unsigned long kuap = regs->kuap; __bad_kuap_fault() local [all...] |
/kernel/linux/linux-5.10/arch/powerpc/include/asm/book3s/32/ |
H A D | kup.h | 96 barrier(); /* make sure thread.kuap is updated before playing with SRs */ 124 current->thread.kuap = (addr & 0xf0000000) | ((((end - 1) >> 28) + 1) & 0xf); 136 u32 kuap = current->thread.kuap; 138 if (unlikely(!kuap)) 141 addr = kuap & 0xf0000000; 142 end = kuap << 28; 153 current->thread.kuap = 0; 159 unsigned long flags = current->thread.kuap; 183 unsigned long begin = regs->kuap [all...] |
/kernel/linux/linux-6.6/arch/powerpc/include/asm/nohash/32/ |
H A D | kup-8xx.h | 16 regs->kuap = mfspr(SPRN_MD_AP); in __kuap_save_and_lock() 25 static __always_inline void __kuap_kernel_restore(struct pt_regs *regs, unsigned long kuap) in __kuap_kernel_restore() argument 27 mtspr(SPRN_MD_AP, regs->kuap); in __kuap_kernel_restore() 82 return !((regs->kuap ^ MD_APG_KUAP) & 0xff000000); in __bad_kuap_fault()
|
/kernel/linux/linux-6.6/arch/powerpc/include/asm/nohash/ |
H A D | kup-booke.h | 30 regs->kuap = mfspr(SPRN_PID); 46 static __always_inline void __kuap_kernel_restore(struct pt_regs *regs, unsigned long kuap) 48 if (regs->kuap) 105 return !regs->kuap;
|
/kernel/linux/linux-5.10/arch/powerpc/include/asm/book3s/64/ |
H A D | kup-radix.h | 77 if (mmu_has_feature(MMU_FTR_RADIX_KUAP) && unlikely(regs->kuap != amr)) { 79 mtspr(SPRN_AMR, regs->kuap); 144 (regs->kuap & (is_write ? AMR_KUAP_BLOCK_WRITE : AMR_KUAP_BLOCK_READ)),
|
/kernel/linux/linux-6.6/arch/powerpc/mm/book3s32/ |
H A D | Makefile | 12 obj-$(CONFIG_PPC_KUAP) += kuap.o
|
/kernel/linux/linux-6.6/arch/powerpc/kernel/ |
H A D | interrupt.c | 370 unsigned long kuap; in interrupt_exit_kernel_prepare() local 390 kuap = kuap_get_and_assert_locked(); in interrupt_exit_kernel_prepare() 458 kuap_kernel_restore(regs, kuap); in interrupt_exit_kernel_prepare()
|
H A D | process.c | 1862 p->thread.kuap = KUAP_NONE; in copy_thread()
|
/kernel/linux/linux-5.10/arch/powerpc/include/asm/nohash/32/ |
H A D | kup-8xx.h | 66 return WARN(!((regs->kuap ^ MD_APG_KUAP) & 0xff000000),
|
/kernel/linux/linux-6.6/arch/powerpc/include/asm/ |
H A D | processor.h | 150 unsigned long kuap; /* opened segments for user access */ member 290 .kuap = ~0UL, /* KUAP_NONE */ \
|
H A D | ptrace.h | 67 unsigned long kuap; member
|
/kernel/linux/linux-5.10/arch/powerpc/include/asm/ |
H A D | ptrace.h | 58 unsigned long kuap; member
|
H A D | processor.h | 159 unsigned long kuap; /* opened segments for user access */ member
|
/kernel/linux/linux-5.10/arch/powerpc/kernel/ |
H A D | asm-offsets.c | 168 OFFSET(KUAP, thread_struct, kuap); in main() 358 STACK_PT_REGS_OFFSET(STACK_REGS_KUAP, kuap); in main()
|
Completed in 11 milliseconds