Re: [PATCH v4 30/32] drm/xe/gt: Report 'Fault response' pagefault error using SIGID
Daniele Ceraolo Spurio <[email protected]>
| Newsgroups | org.freedesktop.lists.intel-xe |
|---|---|
| Message-ID | <[email protected]> |
On 8/13/2026 12:46 PM, Michal Wajdeczko wrote: > > On 8/13/2026 8:37 PM, Rodrigo Vivi wrote: >> On Wed, Aug 12, 2026 at 09:14:46PM +0200, Michal Wajdeczko wrote: >>> Report 'Unsuccessful response' error using xe_log_err() helper. >>> >>> Signed-off-by: Michal Wajdeczko <[email protected]> >>> Cc: Rodrigo Vivi <[email protected]> >>> Cc: Matthew Brost <[email protected]> >>> Cc: Daniele Ceraolo Spurio <[email protected]> >>> Cc: Aravind Iddamsetty <[email protected]> >>> Cc: Mallesh Koujalagi <[email protected]> >>> --- >>> v2: rebased (Michal) reword message (Mallesh) >>> --- >>> drivers/gpu/drm/xe/xe_pagefault.c | 4 ++-- >>> 1 file changed, 2 insertions(+), 2 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/xe/xe_pagefault.c b/drivers/gpu/drm/xe/xe_pagefault.c >>> index 7e829c61387f..eb600c466187 100644 >>> --- a/drivers/gpu/drm/xe/xe_pagefault.c >>> +++ b/drivers/gpu/drm/xe/xe_pagefault.c >>> @@ -14,6 +14,7 @@ >>> #include "xe_gt_types.h" >>> #include "xe_gt_stats.h" >>> #include "xe_hw_engine.h" >>> +#include "xe_log.h" >>> #include "xe_pagefault.h" >>> #include "xe_pagefault_types.h" >>> #include "xe_svm.h" >>> @@ -625,8 +626,7 @@ static void xe_pagefault_queue_work(struct work_struct *w) >>> xe_pagefault_save_to_vm(gt_to_xe(gt), pf); >>> xe_pagefault_cache_start_invalidate(cache_start); >>> xe_pagefault_print(pf); >>> - xe_gt_info(pf->gt, "Fault response: Unsuccessful %pe\n", >>> - ERR_PTR(err)); >>> + xe_log_err(pf->gt, PAGEFAULT, err, "Unsuccessful response\n"); >> I'm wondering if we should really go from info to err here... > my question was different: > "why this err is only reported as info level?" > as once we hit this condition we also print large dump > (see xe_pagefault_print) likely for debug/diagnostics > so it seems important drive-by comment, but AFAIU this error can be intentionally triggered by UMD by simply accessing an invalid PPGTT address (see e.g. xe_exec_fault_mode@invalid-va), and we usually avoid using error-level logs for something that UMD can cause on demand. Daniele > > @Matthew, comments? > >> Why not staying with xe_log_info or now? > I can change that for xe_log_info, but then (by design) > we will not print an error > >> But also, why err and not ERR_PTR(err)? > patch 10/32 [1] introduced helpers that take just errno > value and convert that into data { ERR_PTR(err), 0 } pair > > [1] https://patchwork.freedesktop.org/patch/745993/?series=171022&rev=4 > >>> } else { >>> xe_gt_stats_incr(pf->gt, XE_GT_STATS_ID_INVALID_PREFETCH_PAGEFAULT_COUNT, 1); >>> xe_gt_dbg(pf->gt, "Prefetch Fault response: Unsuccessful %pe\n", >>> -- >>> 2.47.1 >>>