Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Michal Wajdeczko <michal.wajdeczko@intel.com>,
	intel-xe@lists.freedesktop.org
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>,
	Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Aravind Iddamsetty <aravind.iddamsetty@intel.com>,
	Mallesh Koujalagi <mallesh.koujalagi@intel.com>
Subject: Re: [PATCH v2 08/22] drm/xe/log: Add SIGID log helpers for components
Date: Wed, 29 Jul 2026 11:06:23 +0300	[thread overview]
Message-ID: <62dadb83a10fe3c30db950a60e968582ed54a304@intel.com> (raw)
In-Reply-To: <20260728161039.579-9-michal.wajdeczko@intel.com>

On Tue, 28 Jul 2026, Michal Wajdeczko <michal.wajdeczko@intel.com> wrote:
> Our component list already defines relation between the component
> name, identified by the TAG, and its numerical identifier and the
> assigned SIGID. We can also already prepare location identifier
> based on the pointer type used to emit the log entry. Add helper
> that will prepare SIGID, COMPONENT and LOCATION parameters for
> xe_log_emit() using provided componentn TAG and the pointer.
>
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> ---
> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
> Cc: Mallesh Koujalagi <mallesh.koujalagi@intel.com>
> ---
> v2: rebased/simplified (Michal)
> ---
>  drivers/gpu/drm/xe/xe_log.h | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_log.h b/drivers/gpu/drm/xe/xe_log.h
> index 43deaf93ce3e..b0f50aa35a96 100644
> --- a/drivers/gpu/drm/xe/xe_log.h
> +++ b/drivers/gpu/drm/xe/xe_log.h
> @@ -85,4 +85,22 @@ void xe_log_emit(struct pci_dev *pdev, int cper_sev, enum xe_sigid sigid,
>  	xe_log_from((any), CPER_SEV_INFORMATIONAL, (sig), (comp), (loc), \
>  		    (data), (len), fmt, ##args)
>  
> +/**
> + * xe_log_comp() - Emit a structured SIGID log entry on the component behalf.
> + * @any: the &xe_device or &xe_tile or &xe_gt pointer this report relates to
> + * @cper_sev: CPER severity (CPER_SEV_FATAL, CPER_SEV_RECOVERABLE, ...)
> + * @TAG: the component tag to use
> + * @data: pointer to the additional details, or ERR_PTR, or NULL if not applicable
> + * @len: length of the @data in bytes, or 0 if not applicable
> + * @fmt: printf-style free text format string (not a stable interface)
> + * @args: arguments for the @fmt format string
> + *
> + * The SIGID will be determined from the component's @TAG.
> + * The component identifier will be determined from the component's @TAG.
> + * The location used to emit SIGID entry will be based on the @any pointer type.
> + */
> +#define xe_log_comp(any, cper_sev, TAG, data, len, fmt, args...) \
> +	xe_log_from((any), (cper_sev), (int)XE_LOG_COMPONENT_##TAG##_SIGID, \
> +		    XE_LOG_COMPONENT_##TAG, (data), (len), fmt, ##args)

I understand you want to use a short TAG at call sites, but the string
concatenation means cscope/global can't find any of them, and you have
to resort to git grep.

BR,
Jani.

> +
>  #endif

-- 
Jani Nikula, Intel

  reply	other threads:[~2026-07-29  8:06 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-28 16:10 [PATCH v2 00/22] drm/xe: Add structured SIGID error logging infrastructure Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 01/22] drm/xe: Introduce xe_any helpers Michal Wajdeczko
2026-07-28 19:11   ` Rodrigo Vivi
2026-07-29  7:23   ` Mallesh, Koujalagi
2026-07-29  7:58   ` Jani Nikula
2026-07-28 16:10 ` [PATCH v2 02/22] drm/xe/log: Add structured SIGID error logging infrastructure Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 03/22] drm/xe/log: Introduce structured component/location identifiers Michal Wajdeczko
2026-07-28 19:13   ` Rodrigo Vivi
2026-07-28 16:10 ` [PATCH v2 04/22] drm/xe/log: Add component/location decorations to dmesg Michal Wajdeczko
2026-07-28 19:16   ` Rodrigo Vivi
2026-07-28 16:10 ` [PATCH v2 05/22] drm/xe/log: Add SIGID log helpers for severity Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 06/22] drm/xe/log: Add SIGID log helpers for location Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 07/22] drm/xe/log: Add SIGID log helpers for location & severity Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 08/22] drm/xe/log: Add SIGID log helpers for components Michal Wajdeczko
2026-07-29  8:06   ` Jani Nikula [this message]
2026-07-28 16:10 ` [PATCH v2 09/22] drm/xe/log: Add SIGID log helpers for errno-only Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 10/22] drm/xe/log: Add hardware error signatures Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 11/22] drm/xe/log: Extend components list with hardware items Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 12/22] drm/xe/ras: Check RAS and LOG component definitions Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 13/22] drm/xe/kunit: Setup driver data in the test device Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 14/22] drm/xe/tests: Add Kunit tests for xe_log Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 15/22] drm/xe: Report 'probe blocked' error using SIGID Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 16/22] drm/xe: Report 'device wedged' errors " Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 17/22] drm/xe: Report 'Survivability Mode' " Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 18/22] drm/xe/guc: Report 'GuC mmio' " Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 19/22] drm/xe/pcode: Report 'Mailbox failed' error " Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 20/22] drm/xe/gt: Report 'reset failed' errors " Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 21/22] drm/xe/gt: Report 'pagefault' " Michal Wajdeczko
2026-07-28 16:10 ` [PATCH v2 22/22] drm/xe/pci: Report 'cannot re-enable' error " Michal Wajdeczko
2026-07-28 16:17 ` ✗ CI.checkpatch: warning for drm/xe: Add structured SIGID error logging infrastructure (rev2) Patchwork
2026-07-28 16:18 ` ✓ CI.KUnit: success " Patchwork
2026-07-28 17:01 ` ✗ Xe.CI.BAT: failure " Patchwork
2026-07-28 20:57 ` ✗ Xe.CI.FULL: " Patchwork
2026-07-29  8:31 ` [PATCH v2 00/22] drm/xe: Add structured SIGID error logging infrastructure Jani Nikula

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=62dadb83a10fe3c30db950a60e968582ed54a304@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=aravind.iddamsetty@intel.com \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=mallesh.koujalagi@intel.com \
    --cc=michal.wajdeczko@intel.com \
    --cc=rodrigo.vivi@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox