arm: Early IRQ enabling in the Undef user handler
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest0 of 5 patches 0 repliesNew
Patches in v1 No applies recorded yet
None of the 5 patches the cover letter announces are in this archive.
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/5] arm: Early IRQ enabling in the Undef user handler
Quoted 33 lines · Arun KS
Quoted 22 lines · Catalin Marinas
I've had this series in my repo for a long time with some follow-ups on the list but without any conclusive ACK or NAK. If there are no objections, I plan to send it to the patch system.
The only change is rebasing to 3.14-rc6 and adding some Cc for the crunch bits.
The
__und_usrhandler accesses the user space to read the opcode of the faulting instruction. This is currently done with interrupts disabled but it could potentially cause a data abort of the page table was modified from another CPU. The data abort with interrupts disabled triggers amight_sleep()warning indo_page_fault()or, worse, deadlock on the pte lock when TLB ops broadcasting is enabled (ARM11MPCore or A15 together with workaround for erratum 798181).Catalin Marinas (5):
arm: Move asm macroget_thread_infotoasm/assembler.h
arm: Add {inc,dec}_preempt_count asm macros
arm: Disable preemption iniwmmxt_task_enable()
arm: Disable preemption incrunch_task_enable()
arm: Enable IRQs before attempting to read user space in__und_usrQuoted 8 lines
arch/arm/include/asm/assembler.h | 42 ++++++++++++++++++++++++++++++++++++++ arch/arm/kernel/entry-armv.S | 11 ++++++---- arch/arm/kernel/entry-header.S | 11 ---------- arch/arm/kernel/iwmmxt.S | 15 ++++++++++---- arch/arm/mach-ep93xx/crunch-bits.S | 13 +++++++++--- arch/arm/vfp/entry.S | 28 ++++++++----------------- arch/arm/vfp/vfphw.S | 19 ++++++----------- 7 files changed, 84 insertions(+), 55 deletions(-)
Quoted 1 line
Tested-by Arun KS<[email protected]>
Thanks. I assume it's tested only with VFP (not crunch nor iwmmxt).
Signature · 1 line
Catalin