Re: [PATCH v3 19/23] drm/xe/guc: Report 'GuC mmio' errors using SIGID
"Mallesh, Koujalagi" <[email protected]>
| Newsgroups | org.freedesktop.lists.intel-xe |
|---|---|
| Message-ID | <[email protected]> |
On 30-07-2026 08:51 pm, Michal Wajdeczko wrote: > Report various 'GuC mmio' errors using xe_log() helpers. > > Signed-off-by: Michal Wajdeczko <[email protected]> LGTM, Reviewed-by: Mallesh Koujalagi <[email protected]> > Cc: Rodrigo Vivi <[email protected]> > Cc: Daniele Ceraolo Spurio <[email protected]> > Cc: Aravind Iddamsetty <[email protected]> > Cc: Mallesh Koujalagi <[email protected]> > --- > drivers/gpu/drm/xe/xe_guc.c | 18 ++++++++++-------- > 1 file changed, 10 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c > index 4286bd05c686..c7f8bbd4cb92 100644 > --- a/drivers/gpu/drm/xe/xe_guc.c > +++ b/drivers/gpu/drm/xe/xe_guc.c > @@ -39,6 +39,7 @@ > #include "xe_guc_rc.h" > #include "xe_guc_relay.h" > #include "xe_guc_submit.h" > +#include "xe_log.h" > #include "xe_memirq.h" > #include "xe_mmio.h" > #include "xe_platform_types.h" > @@ -1542,8 +1543,9 @@ int xe_guc_mmio_send_recv(struct xe_guc *guc, const u32 *request, > /* scratch registers might be cleared during FLR, try once more */ > if (!header) { > if (++lost > MAX_RETRIES_ON_FLR) { > - xe_gt_err(gt, "GuC mmio request %#x: lost, too many retries %u\n", > - request[0], lost); > + xe_log_err(gt, GUC, -ENOLINK, > + "MMIO request %#x: lost, too many retries %u\n", > + request[0], lost); > return -ENOLINK; > } > xe_gt_dbg(gt, "GuC mmio request %#x: lost, trying again\n", request[0]); > @@ -1551,8 +1553,8 @@ int xe_guc_mmio_send_recv(struct xe_guc *guc, const u32 *request, > goto retry; > } > timeout: > - xe_gt_err(gt, "GuC mmio request %#x: no reply %#x\n", > - request[0], header); > + xe_log_err(gt, GUC, ret, "MMIO request %#x: no reply %#x\n", > + request[0], header); > return ret; > } > > @@ -1607,16 +1609,16 @@ int xe_guc_mmio_send_recv(struct xe_guc *guc, const u32 *request, > return -EREMCHG; > } > > - xe_gt_err(gt, "GuC mmio request %#x: failure %#x hint %#x\n", > - request[0], error, hint); > + xe_log_err(gt, GUC, -ENXIO, "MMIO request %#x: failure %#x hint %#x\n", > + request[0], error, hint); > return -ENXIO; > } > > if (FIELD_GET(GUC_HXG_MSG_0_TYPE, header) != > GUC_HXG_TYPE_RESPONSE_SUCCESS) { > proto: > - xe_gt_err(gt, "GuC mmio request %#x: unexpected reply %#x\n", > - request[0], header); > + xe_log_err(gt, GUC, -EPROTO, "MMIO request %#x: unexpected reply %#x\n", > + request[0], header); > return -EPROTO; > } >