mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH RFC v2 0/2] ufs: core: cleanup and threaded irq handler
@ 2025-03-26  8:36 Neil Armstrong
  2025-03-26  8:36 ` [PATCH RFC v2 1/2] ufs: core: drop last_intr_status/ts stats Neil Armstrong
  2025-03-26  8:36 ` [PATCH RFC v2 2/2] ufs: core: delegate the interrupt service routine to a threaded irq handler Neil Armstrong
  0 siblings, 2 replies; 8+ messages in thread
From: Neil Armstrong @ 2025-03-26  8:36 UTC (permalink / raw)
  To: Alim Akhtar, Avri Altman, Bart Van Assche, James E.J. Bottomley,
	Martin K. Petersen
  Cc: Manivannan Sadhasivam, linux-arm-msm, linux-scsi, linux-kernel,
	Neil Armstrong

On systems with a large number request slots and unavailable MCQ,
the current design of the interrupt handler can delay handling of
other subsystems interrupts causing display artifacts, GPU stalls
or system firmware requests timeouts.

Example of errors reported on a loaded system:
 [drm:dpu_encoder_frame_done_timeout:2706] [dpu error]enc32 frame done timeout
 msm_dpu ae01000.display-controller: [drm:hangcheck_handler [msm]] *ERROR* 67.5.20.1: hangcheck detected gpu lockup rb 2!
 msm_dpu ae01000.display-controller: [drm:hangcheck_handler [msm]] *ERROR* 67.5.20.1:     completed fence: 74285
 msm_dpu ae01000.display-controller: [drm:hangcheck_handler [msm]] *ERROR* 67.5.20.1:     submitted fence: 74286
 Error sending AMC RPMH requests (-110)

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
Changes in v2:
- Removed last_intr_status/last_intr_ts stats
- Handle irq in prinmary handler for MCQ case
- Stop touching REG_INTERRUPT_ENABLE register
- Link to v1: https://lore.kernel.org/r/20250321-topic-ufs-use-threaded-irq-v1-1-7a55816a4b1d@linaro.org

---
Neil Armstrong (2):
      ufs: core: drop last_intr_status/ts stats
      ufs: core: delegate the interrupt service routine to a threaded irq handler

 drivers/ufs/core/ufshcd.c | 45 ++++++++++++++++++++++++++++++++++-----------
 include/ufs/ufshcd.h      |  5 -----
 2 files changed, 34 insertions(+), 16 deletions(-)
---
base-commit: ff7f9b199e3f4cc7d61df5a9a26a7cbb5c1492e6
change-id: 20250321-topic-ufs-use-threaded-irq-53af30f2529f

Best regards,
-- 
Neil Armstrong <neil.armstrong@linaro.org>


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

end of thread, other threads:[~2025-03-28 17:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-03-26  8:36 [PATCH RFC v2 0/2] ufs: core: cleanup and threaded irq handler Neil Armstrong
2025-03-26  8:36 ` [PATCH RFC v2 1/2] ufs: core: drop last_intr_status/ts stats Neil Armstrong
2025-03-27 11:40   ` Bart Van Assche
2025-03-27 12:45     ` Neil Armstrong
2025-03-26  8:36 ` [PATCH RFC v2 2/2] ufs: core: delegate the interrupt service routine to a threaded irq handler Neil Armstrong
2025-03-27 11:56   ` Bart Van Assche
2025-03-27 12:47     ` Neil Armstrong
2025-03-28 17:14   ` Bart Van Assche

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

all inboxes | Powered by JetHome®