]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ARM: ensure interrupts are enabled in __do_user_fault()
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Fri, 5 Dec 2025 12:17:00 +0000 (12:17 +0000)
committerRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Mon, 2 Mar 2026 11:03:18 +0000 (11:03 +0000)
commit59e4f3b45b96a24fc9b7a89e5f8a2168b30f95af
tree6ef8efd9b77ce1194eedfe72f5ff7b355f3b5009
parent05f7e89ab9731565d8a62e3b5d1ec206485eeb0b
ARM: ensure interrupts are enabled in __do_user_fault()

__do_user_fault() may be called from fault handling paths where the
interrupts are enabled or disabled. E.g. do_page_fault() calls this
with interrupts enabled, whereas do_sect_fault()->do_bad_area()
will call this with interrupts disabled. Since this is a userspace
fault, we know that interrupts were enabled in the parent context,
so call local_irq_enable() here to give a consistent interrupt state.

This is necessary for force_sig_info() when PREEMPT_RT is enabled.

Reported-by: Yadi.hu <yadi.hu@windriver.com>
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
arch/arm/mm/fault.c