[PATCH 0/3] arm64: cleanup DAIF handling for EL0 returns

Mark Rutland mark.rutland at arm.com
Tue Feb 6 04:38:45 PST 2024


Hi,

These patches rework DAIF handling when returning to EL0, simplifiying
the logic in do_notify_resume() and allowing Debug + SError to be
unmasked for a little longer during exception return.

My primary motivation for these changes is to centralize entry/exit DAIF
management within entry-common.c, as this will allow entry/exit
sequences to be specialised, and make it much easier to add support for
FEAT_NMI. With specialized entry DAIF management, it will also be
possible to simplify local_daif_{save,restore}() and
local_irq_{save,restore}().

I'm sending this out on its own as (IMO) it's a nice cleanup on its own,
and I don't believe that I'll have the remainder of the DAIF rework
ready for this cycle.

The series is based on v6.8-rc3.

Mark.

Mark Rutland (3):
  arm64: Simplify do_notify_resume() DAIF masking
  arm64: Move do_notify_resume() to entry-common.c
  arm64: Unmask Debug + SError in do_notify_resume()

 arch/arm64/include/asm/exception.h |  2 +-
 arch/arm64/kernel/entry-common.c   | 36 ++++++++++++++++++++++++++-
 arch/arm64/kernel/signal.c         | 39 ++----------------------------
 3 files changed, 38 insertions(+), 39 deletions(-)

-- 
2.30.2




More information about the linux-arm-kernel mailing list