From: sashiko-bot@kernel.org
To: "Dnyaneshwar Bhadane" <dnyaneshwar.bhadane@intel.com>
Cc: intel-xe@lists.freedesktop.org
Subject: Re: [PATCH 08/12] drm/xe/pat: Assert pat.ops before dereferencing members
Date: Wed, 19 Aug 2026 19:22:21 +0000 [thread overview]
Message-ID: <20260819192222.25CAD1F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260819191442.1957986-9-dnyaneshwar.bhadane@intel.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
Pre-existing issues:
- [High] Ineffective bug fix / Unhandled NULL pointer dereference: The newly added `xe_assert(xe, xe->pat.ops)` does not halt execution, failing to prevent the subsequent NULL pointer dereference on `xe->pat.ops`.
--
--- Patch [8]: [PATCH 08/12] drm/xe/pat: Assert pat.ops before dereferencing members ---
commit 621e2fef21f2cbefa89f2639ce18871bffca6aa2
Author: Dnyaneshwar Bhadane <dnyaneshwar.bhadane@intel.com>
drm/xe/pat: Assert pat.ops before dereferencing members
This commit attempts to catch missing PAT tables early by adding an
assertion for xe->pat.ops.
> diff --git a/drivers/gpu/drm/xe/xe_pat.c b/drivers/gpu/drm/xe/xe_pat.c
> index a5fe1beec652d..4331ef097ba0c 100644
> --- a/drivers/gpu/drm/xe/xe_pat.c
> +++ b/drivers/gpu/drm/xe/xe_pat.c
> @@ -690,6 +690,7 @@ void xe_pat_init_early(struct xe_device *xe)
> GRAPHICS_VER(xe), GRAPHICS_VERx100(xe) % 100);
> }
>
> + xe_assert(xe, xe->pat.ops);
[Severity: High]
This is a pre-existing issue, but does this xe_assert() actually prevent
the subsequent NULL pointer dereference in xe_pat_init_early()?
The commit message states the assert is meant to catch a missing PAT table
"rather than faulting on the subsequent ops member checks". However,
xe_assert() wraps drm_WARN and does not return or halt execution.
If the driver is booted on an unsupported platform where the table is
missing, the preceding else branch emits an error log but leaves
xe->pat.ops as NULL. The newly added assert will emit a warning on
debug builds, but control flow will immediately fall through to the
next line and still cause a kernel panic by dereferencing the NULL pointer.
Could this function return an error code or bail out early when xe->pat.ops
is missing, instead of relying on an assertion that allows execution
to continue?
> xe_assert(xe, xe->pat.ops->dump);
> xe_assert(xe, xe->pat.ops->program_graphics);
> xe_assert(xe, MEDIA_VER(xe) < 13 || xe->pat.ops->program_media);
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260819191442.1957986-1-dnyaneshwar.bhadane@intel.com?part=8
next prev parent reply other threads:[~2026-08-19 19:22 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-19 19:14 [PATCH 00/12] drm/xe: Convert IO_BUS errors to structured xe_log API Dnyaneshwar Bhadane
2026-08-19 19:14 ` [PATCH 01/12] drm/xe/log: Add VRAM, PAT, and HWMON DRIVER_HARDWARE components Dnyaneshwar Bhadane
2026-08-19 19:14 ` [PATCH 02/12] drm/xe/ggtt: Report GGTT errors using structured logging Dnyaneshwar Bhadane
2026-08-19 19:14 ` [PATCH 03/12] drm/xe/hwmon: Report errors using structured xe_log API Dnyaneshwar Bhadane
2026-08-19 19:23 ` sashiko-bot
2026-08-19 19:14 ` [PATCH 04/12] drm/xe/mmio: Report BAR mapping " Dnyaneshwar Bhadane
2026-08-19 19:14 ` [PATCH 05/12] drm/xe/memirq: Report " Dnyaneshwar Bhadane
2026-08-19 19:22 ` sashiko-bot
2026-08-19 19:14 ` [PATCH 06/12] drm/xe/reg_whitelist: Report whitelist overflow " Dnyaneshwar Bhadane
2026-08-19 19:22 ` sashiko-bot
2026-08-19 19:14 ` [PATCH 07/12] drm/xe/reg_sr: Report save-restore errors " Dnyaneshwar Bhadane
2026-08-19 19:14 ` [PATCH 08/12] drm/xe/pat: Assert pat.ops before dereferencing members Dnyaneshwar Bhadane
2026-08-19 19:22 ` sashiko-bot [this message]
2026-08-19 19:14 ` [PATCH 09/12] drm/xe/pat: Report missing PAT table using structured xe_log API Dnyaneshwar Bhadane
2026-08-19 19:23 ` sashiko-bot
2026-08-19 19:14 ` [PATCH 10/12] drm/xe/pci: Report unknown GMDID versions " Dnyaneshwar Bhadane
2026-08-19 19:27 ` sashiko-bot
2026-08-19 19:14 ` [PATCH 11/12] drm/xe/lmtt: Report invalidation errors " Dnyaneshwar Bhadane
2026-08-19 19:28 ` sashiko-bot
2026-08-19 19:14 ` [PATCH 12/12] drm/xe/vram: Report VRAM " Dnyaneshwar Bhadane
2026-08-19 19:29 ` sashiko-bot
2026-08-20 6:06 ` Dnyaneshwar Bhadane
2026-08-19 19:23 ` ✓ CI.KUnit: success for drm/xe: Convert IO_BUS errors to " Patchwork
2026-08-19 20:45 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-20 1:38 ` ✗ Xe.CI.FULL: failure " 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=20260819192222.25CAD1F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=dnyaneshwar.bhadane@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=sashiko-reviews@lists.linux.dev \
/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.