OpenSBI Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/10] Improve trap handling for nested traps
@ 2024-03-12 10:27 Anup Patel
  2024-03-12 10:27 ` [PATCH v2 01/10] lib: sbi: Remove epc from struct sbi_trap_info Anup Patel
                   ` (9 more replies)
  0 siblings, 10 replies; 30+ messages in thread
From: Anup Patel @ 2024-03-12 10:27 UTC (permalink / raw)
  To: opensbi

Nested traps will be a common when dealing with RAS error traps so
this series improves trap handling for nested traps by introducing
a linked-list based trap context chain.

These patches can also be found the trap_handling_imp_v2 branch at
https://github.com/avpatel/opensbi.git

Changes since v1:
 - Include samuel's patch in the series
 - Embed sbi_trap_regs and sbi_trap_info in the new
   struct sbi_trap_context
 - Drop the mcause parameter of sbi_trap_aia_irq()

Anup Patel (9):
  lib: sbi: Remove sbi_trap_exit() and related code
  include: sbi: Add trap_context pointer in struct sbi_scratch
  lib: sbi: Introduce trap context
  lib: sbi: Simplify parameters of misaligned and access fault handlers
  lib: sbi: Simplify parameters of sbi_illegal_insn_handler()
  lib: sbi: Remove regs paramter of sbi_irqchip_process()
  lib: sbi: Remove regs parameter from trap irq handling functions
  lib: sbi: Pass trap context pointer to sbi_ecall_handler()
  lib: sbi: Extend sbi_trap_error() to dump state in a nested trap

Samuel Holland (1):
  lib: sbi: Remove epc from struct sbi_trap_info

 firmware/fw_base.S             |  76 +++++++++----
 include/sbi/sbi_ecall.h        |   4 +-
 include/sbi/sbi_illegal_insn.h |   4 +-
 include/sbi/sbi_irqchip.h      |   5 +-
 include/sbi/sbi_scratch.h      |  14 +--
 include/sbi/sbi_trap.h         |  45 ++++++--
 include/sbi/sbi_trap_ldst.h    |  12 +-
 lib/sbi/sbi_ecall.c            |   3 +-
 lib/sbi/sbi_ecall_legacy.c     |   4 -
 lib/sbi/sbi_expected_trap.S    |   4 -
 lib/sbi/sbi_illegal_insn.c     |  16 ++-
 lib/sbi/sbi_irqchip.c          |  10 +-
 lib/sbi/sbi_trap.c             | 195 +++++++++++++++------------------
 lib/sbi/sbi_trap_ldst.c        |  71 ++++++------
 lib/utils/irqchip/imsic.c      |   2 +-
 15 files changed, 240 insertions(+), 225 deletions(-)

-- 
2.34.1



^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2024-03-17 11:55 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-12 10:27 [PATCH v2 00/10] Improve trap handling for nested traps Anup Patel
2024-03-12 10:27 ` [PATCH v2 01/10] lib: sbi: Remove epc from struct sbi_trap_info Anup Patel
2024-03-12 10:27 ` [PATCH v2 02/10] lib: sbi: Remove sbi_trap_exit() and related code Anup Patel
2024-03-12 10:27 ` [PATCH v2 03/10] include: sbi: Add trap_context pointer in struct sbi_scratch Anup Patel
2024-03-12 16:55   ` Samuel Holland
2024-03-12 10:27 ` [PATCH v2 04/10] lib: sbi: Introduce trap context Anup Patel
2024-03-12 16:55   ` Samuel Holland
2024-03-13  4:56   ` Xiang W
2024-03-17 11:23     ` Anup Patel
2024-03-12 10:27 ` [PATCH v2 05/10] lib: sbi: Simplify parameters of misaligned and access fault handlers Anup Patel
2024-03-12 16:55   ` Samuel Holland
2024-03-13 13:45   ` Clément Léger
2024-03-12 10:28 ` [PATCH v2 06/10] lib: sbi: Simplify parameters of sbi_illegal_insn_handler() Anup Patel
2024-03-12 16:56   ` Samuel Holland
2024-03-13 13:42   ` Clément Léger
2024-03-17 11:28     ` Anup Patel
2024-03-12 10:28 ` [PATCH v2 07/10] lib: sbi: Remove regs paramter of sbi_irqchip_process() Anup Patel
2024-03-12 16:56   ` Samuel Holland
2024-03-13 13:39   ` Clément Léger
2024-03-17 11:30     ` Anup Patel
2024-03-12 10:28 ` [PATCH v2 08/10] lib: sbi: Remove regs parameter from trap irq handling functions Anup Patel
2024-03-12 16:56   ` Samuel Holland
2024-03-13 13:51   ` Clément Léger
2024-03-17 11:36     ` Anup Patel
2024-03-12 10:28 ` [PATCH v2 09/10] lib: sbi: Pass trap context pointer to sbi_ecall_handler() Anup Patel
2024-03-12 16:56   ` Samuel Holland
2024-03-13 13:47   ` Clément Léger
2024-03-12 10:28 ` [PATCH v2 10/10] lib: sbi: Extend sbi_trap_error() to dump state in a nested trap Anup Patel
2024-03-12 17:21   ` Samuel Holland
2024-03-17 11:55     ` Anup Patel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox