From: Raag Jadav <raag.jadav@intel.com>
To: Riana Tauro <riana.tauro@intel.com>
Cc: intel-xe@lists.freedesktop.org, anshuman.gupta@intel.com,
rodrigo.vivi@intel.com, aravind.iddamsetty@linux.intel.com,
badal.nilawar@intel.com, ravi.kishore.koppuravuri@intel.com,
mallesh.koujalagi@intel.com, soham.purkait@intel.com
Subject: Re: [PATCH 2/2] drm/xe/xe_ras: Add support for PCIe error component handling
Date: Wed, 2 Sep 2026 09:07:36 +0200 [thread overview]
Message-ID: <apfLOAxy1690muzY@black.igk.intel.com> (raw)
In-Reply-To: <20260825141109.3797483-6-riana.tauro@intel.com>
On Tue, Aug 25, 2026 at 07:41:12PM +0530, Riana Tauro wrote:
> PCIe Subsystem GPMA errors and other uncorrectable non-fatal usp errors
> are collected and classified by system controller under component PCIe.
> For PCIe SS GPMA errors, request a Secondary Bus Reset.
Again, can you please elaborate? I'm struggling to keep up :(
> All other PCIe errors are treated as recovered with no further action.
>
> Signed-off-by: Riana Tauro <riana.tauro@intel.com>
> ---
> drivers/gpu/drm/xe/xe_ras.c | 18 ++++++++++++++++++
> drivers/gpu/drm/xe/xe_ras_types.h | 1 +
> 2 files changed, 19 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_ras.c b/drivers/gpu/drm/xe/xe_ras.c
> index 586dc28a638a..39e5fdb9770d 100644
> --- a/drivers/gpu/drm/xe/xe_ras.c
> +++ b/drivers/gpu/drm/xe/xe_ras.c
> @@ -394,6 +394,21 @@ static u8 handle_device_memory_errors(struct xe_device *xe, struct xe_ras_error_
> return XE_RAS_RECOVERY_ACTION_RECOVERED;
> }
>
> +static u8 handle_pcie_errors(struct xe_device *xe, struct xe_ras_error_array *arr)
> +{
> + struct xe_ras_ieh_error *info = (void *)arr->details;
> +
> + if (info->global_error_status & XE_RAS_PCIE_IEH_GPMA) {
> + xe_log_comp_fatal(xe, PCIE, &arr->counter, sizeof(arr->counter),
> + "GPMA error detected\n");
> + return XE_RAS_RECOVERY_ACTION_RESET;
> + }
> +
> + xe_log_comp_recoverable(xe, PCIE, &arr->counter, sizeof(arr->counter),
> + "Other errors detected\n");
Ditto for 'unknown'.
Raag
> + return XE_RAS_RECOVERY_ACTION_RECOVERED;
> +}
> +
> static u8 handle_fabric_errors(struct xe_device *xe, struct xe_ras_error_array *arr)
> {
> struct xe_ras_error_product *product = &arr->counter.product;
> @@ -572,6 +587,9 @@ enum xe_ras_recovery_action xe_ras_process_errors(struct xe_device *xe)
> case XE_RAS_COMP_DEVICE_MEMORY:
> action = handle_device_memory_errors(xe, arr);
> break;
> + case XE_RAS_COMP_PCIE:
> + action = handle_pcie_errors(xe, arr);
> + break;
> case XE_RAS_COMP_FABRIC:
> action = handle_fabric_errors(xe, arr);
> break;
> diff --git a/drivers/gpu/drm/xe/xe_ras_types.h b/drivers/gpu/drm/xe/xe_ras_types.h
> index 73517fd0d415..0a9747df8a69 100644
> --- a/drivers/gpu/drm/xe/xe_ras_types.h
> +++ b/drivers/gpu/drm/xe/xe_ras_types.h
> @@ -12,6 +12,7 @@
> #define XE_RAS_NUM_ERROR_ARR 3
> /* Error bits in IEH global error status register */
> #define XE_RAS_SOC_IEH_PUNIT BIT(1)
> +#define XE_RAS_PCIE_IEH_GPMA BIT(5)
> /* Bits 16-31 represent individual SAF MHB unit */
> #define XE_RAS_FAB_IEH_SAF_MHB GENMASK(31, 16)
> /* Fabric Data payload parity errors */
> --
> 2.47.1
>
next prev parent reply other threads:[~2026-09-02 7:07 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-25 14:11 [PATCH 0/2] Add error handling support for PCIe and fabric components Riana Tauro
2026-08-25 14:11 ` [PATCH 1/2] drm/xe/xe_ras: Add Fabric error handling Riana Tauro
2026-08-25 14:50 ` Nilawar, Badal
2026-08-26 21:00 ` Rodrigo Vivi
2026-08-27 10:55 ` Aravind Iddamsetty
2026-08-27 12:28 ` Rodrigo Vivi
2026-08-28 6:14 ` Tauro, Riana
2026-09-01 17:19 ` Nilawar, Badal
2026-09-01 22:13 ` Rodrigo Vivi
2026-08-28 11:22 ` Mallesh, Koujalagi
2026-09-02 7:05 ` Raag Jadav
2026-08-25 14:11 ` [PATCH 2/2] drm/xe/xe_ras: Add support for PCIe error component handling Riana Tauro
2026-08-28 11:02 ` Mallesh, Koujalagi
2026-09-02 7:07 ` Raag Jadav [this message]
2026-08-25 14:18 ` ✓ CI.KUnit: success for Add error handling support for PCIe and fabric components Patchwork
2026-08-25 15:14 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-25 18:40 ` ✓ Xe.CI.FULL: " Patchwork
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=apfLOAxy1690muzY@black.igk.intel.com \
--to=raag.jadav@intel.com \
--cc=anshuman.gupta@intel.com \
--cc=aravind.iddamsetty@linux.intel.com \
--cc=badal.nilawar@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=mallesh.koujalagi@intel.com \
--cc=ravi.kishore.koppuravuri@intel.com \
--cc=riana.tauro@intel.com \
--cc=rodrigo.vivi@intel.com \
--cc=soham.purkait@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.