aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/mm/fault.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm64/mm/fault.c')
-rw-r--r--arch/arm64/mm/fault.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c
index 013e2cbe7924..b1166d1e5955 100644
--- a/arch/arm64/mm/fault.c
+++ b/arch/arm64/mm/fault.c
@@ -280,7 +280,8 @@ static int __kprobes do_page_fault(unsigned long addr, unsigned int esr,
280 } 280 }
281 281
282 if (permission_fault(esr) && (addr < USER_DS)) { 282 if (permission_fault(esr) && (addr < USER_DS)) {
283 if (get_fs() == KERNEL_DS) 283 /* regs->orig_addr_limit may be 0 if we entered from EL0 */
284 if (regs->orig_addr_limit == KERNEL_DS)
284 die("Accessing user space memory with fs=KERNEL_DS", regs, esr); 285 die("Accessing user space memory with fs=KERNEL_DS", regs, esr);
285 286
286 if (!search_exception_tables(regs->pc)) 287 if (!search_exception_tables(regs->pc))