Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH v4 0/5] drm/xe: Structured RAS error logging infrastructure
@ 2026-06-30 11:55 Mallesh Koujalagi
  2026-06-30 11:55 ` [RFC PATCH v4 1/5] drm/xe: Add SIG_IDs for RAS error logging Mallesh Koujalagi
                   ` (8 more replies)
  0 siblings, 9 replies; 19+ messages in thread
From: Mallesh Koujalagi @ 2026-06-30 11:55 UTC (permalink / raw)
  To: intel-xe, rodrigo.vivi, matthew.brost, thomas.hellstrom
  Cc: anshuman.gupta, badal.nilawar, vinay.belgaumkar,
	aravind.iddamsetty, riana.tauro, karthik.poosa, sk.anirban,
	raag.jadav, Mallesh Koujalagi

Today XE logs GPU errors with ad-hoc drm_err()/drm_warn() calls that
have no standard format, making it hard to identify what failed, where
on the GPU it happened, and how to correlate events.

This series adds a lightweight structured logging layer:

- Introduces xe_sig_ids.h (Signature IDs that name each error
  class) and xe_ras_log.c (__xe_ras_log()), which emits every error in
  a fixed format:

    [xe-err] SIG_ID=<id> Severity=<sev> Location=<loc> Errno=<n>
    Message="<msg>"

- Converts the first call site: the open-coded drm_err() in
  xe_device_declare_wedged() is replaced with xe_ras_log_wedged(),
  routing wedge events through the new common path.

v2:
- Rebase.

v3:
- Add HW SIG IDS details. (Riana)
- Refer "Tile%u" and "GT%u" strings. (Michal Wajdeczko)
- Remov xe_cper_severity_str(). (Michal Wajdeczko/Riana)
- Move __xe_ras_log() function to xe_ras_log.h. (Michal Wajdeczko)
- Make macro function properly.
- Remove *_FIRST and *_LAST macro. (Michal Wajdeczko/Riana)
- Add sig id documents. (Riana)
- Change macro function same prefix as the file.
- Handle __xe_ras_log() function with variable format.
- Update message in xe_ras_log_wedged().

v4:
- Change commit message.
- Update the document. (Riana)
- Move documents to xe_sig_ids.h
- Update Hardware error.
- Remove example in Hardware error SIG_ID.
- Make Fabric errors.
- Add kernel doc for SIG_IDS. (Michal Wajdeczko)
- Provide severity details
- Handle CONFIG_UEFI_CPER properly.
- Add CPER_SEV_RECOVERABLE in __xe_ras_log().
- Add xe_ras_log_runtime_fw() and xe_ras_log_device_fw() macros.
- Update commit message.
- Remove document. (Riana)
- Replace XE_RAS_WEDGED to xe_ras_log_wedged. (Dnyaneshwar)

Dnyaneshwar Bhadane (1):
  drm/xe: Replace critical drm_err log with xe_ras_log_probe

Mallesh Koujalagi (4):
  drm/xe: Add SIG_IDs for RAS error logging
  drm/xe: Add RAS logging helpers
  drm/xe: use xe_ras_log_wedged macro in xe_device_declare_wedged
  drm/xe: Use RAS logging to report survivability mode

 Documentation/gpu/xe/index.rst             |   1 +
 Documentation/gpu/xe/xe_sig_ids.rst        |   8 ++
 drivers/gpu/drm/xe/Makefile                |   1 +
 drivers/gpu/drm/xe/xe_device.c             |  23 ++--
 drivers/gpu/drm/xe/xe_hwmon.c              |   4 +-
 drivers/gpu/drm/xe/xe_irq.c                |   5 +-
 drivers/gpu/drm/xe/xe_mmio.c               |   5 +-
 drivers/gpu/drm/xe/xe_pat.c                |   6 +-
 drivers/gpu/drm/xe/xe_pci.c                |  14 ++-
 drivers/gpu/drm/xe/xe_pcode.c              |   5 +-
 drivers/gpu/drm/xe/xe_ras_log.c            |  65 +++++++++++
 drivers/gpu/drm/xe/xe_ras_log.h            |  62 +++++++++++
 drivers/gpu/drm/xe/xe_sig_ids.h            | 124 +++++++++++++++++++++
 drivers/gpu/drm/xe/xe_survivability_mode.c |  11 +-
 drivers/gpu/drm/xe/xe_vram.c               |   5 +-
 15 files changed, 307 insertions(+), 32 deletions(-)
 create mode 100644 Documentation/gpu/xe/xe_sig_ids.rst
 create mode 100644 drivers/gpu/drm/xe/xe_ras_log.c
 create mode 100644 drivers/gpu/drm/xe/xe_ras_log.h
 create mode 100644 drivers/gpu/drm/xe/xe_sig_ids.h

-- 
2.34.1


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

end of thread, other threads:[~2026-07-06 13:59 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-30 11:55 [RFC PATCH v4 0/5] drm/xe: Structured RAS error logging infrastructure Mallesh Koujalagi
2026-06-30 11:55 ` [RFC PATCH v4 1/5] drm/xe: Add SIG_IDs for RAS error logging Mallesh Koujalagi
2026-06-30 14:25   ` Raag Jadav
2026-07-06 10:43     ` Mallesh, Koujalagi
2026-07-06 13:59   ` Michal Wajdeczko
2026-06-30 11:55 ` [RFC PATCH v4 2/5] drm/xe: Add RAS logging helpers Mallesh Koujalagi
2026-07-03 11:15   ` Tauro, Riana
2026-07-03 13:01     ` Mallesh, Koujalagi
2026-07-06  8:35       ` Tauro, Riana
2026-07-06 10:53         ` Mallesh, Koujalagi
2026-06-30 11:55 ` [RFC PATCH v4 3/5] drm/xe: use xe_ras_log_wedged macro in xe_device_declare_wedged Mallesh Koujalagi
2026-07-06  8:36   ` Tauro, Riana
2026-06-30 11:55 ` [RFC PATCH v4 4/5] drm/xe: Use RAS logging to report survivability mode Mallesh Koujalagi
2026-07-06  8:41   ` Tauro, Riana
2026-06-30 11:55 ` [RFC PATCH v4 5/5] drm/xe: Replace critical drm_err log with xe_ras_log_probe Mallesh Koujalagi
2026-06-30 13:12 ` ✗ CI.checkpatch: warning for drm/xe: Structured RAS error logging infrastructure (rev4) Patchwork
2026-06-30 13:13 ` ✓ CI.KUnit: success " Patchwork
2026-06-30 14:05 ` ✓ Xe.CI.BAT: " Patchwork
2026-07-01  4:42 ` ✗ Xe.CI.FULL: failure " Patchwork

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