Home
last modified time | relevance | path

Searched refs:kuap (Results 1 - 14 of 14) sorted by relevance

/kernel/linux/linux-6.6/arch/powerpc/include/asm/book3s/32/
H A Dkup.h60 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 Dkup.h96 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 Dkup-8xx.h16 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 Dkup-booke.h30 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 Dkup-radix.h77 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 DMakefile12 obj-$(CONFIG_PPC_KUAP) += kuap.o
/kernel/linux/linux-6.6/arch/powerpc/kernel/
H A Dinterrupt.c370 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 Dprocess.c1862 p->thread.kuap = KUAP_NONE; in copy_thread()
/kernel/linux/linux-5.10/arch/powerpc/include/asm/nohash/32/
H A Dkup-8xx.h66 return WARN(!((regs->kuap ^ MD_APG_KUAP) & 0xff000000),
/kernel/linux/linux-6.6/arch/powerpc/include/asm/
H A Dprocessor.h150 unsigned long kuap; /* opened segments for user access */ member
290 .kuap = ~0UL, /* KUAP_NONE */ \
H A Dptrace.h67 unsigned long kuap; member
/kernel/linux/linux-5.10/arch/powerpc/include/asm/
H A Dptrace.h58 unsigned long kuap; member
H A Dprocessor.h159 unsigned long kuap; /* opened segments for user access */ member
/kernel/linux/linux-5.10/arch/powerpc/kernel/
H A Dasm-offsets.c168 OFFSET(KUAP, thread_struct, kuap); in main()
358 STACK_PT_REGS_OFFSET(STACK_REGS_KUAP, kuap); in main()

Completed in 11 milliseconds