From: sashiko-bot@kernel.org
To: "Michael J. Ruhl" <michael.j.ruhl@intel.com>
Cc: intel-xe@lists.freedesktop.org
Subject: Re: [PATCH v3 03/10] drm/xe/vsec: Protect against missing config
Date: Mon, 24 Aug 2026 16:36:35 +0000 [thread overview]
Message-ID: <20260824163635.C03301F00A3A@smtp.kernel.org> (raw)
In-Reply-To: <20260824162317.2450380-15-michael.j.ruhl@intel.com>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
New issues:
- [Medium] Subsystem guidelines violation: The patch uses the absence of `soc_remapper.set_telem_region` as a proxy check to prevent execution on Virtual Functions (VF) instead of an explicit `IS_SRIOV_VF()` guard.
Pre-existing issues:
- [High] The `xe_pmt_cb` struct is missing the `.read_reg` and `.write_reg` callbacks required for safe PMT Crashlog control register access on discrete GPUs.
--
--- Patch [3]: [PATCH v3 03/10] drm/xe/vsec: Protect against missing config ---
commit 6d90522f74020b6e17f1f98588ed1740977adfb4
Author: Michael J. Ruhl <michael.j.ruhl@intel.com>
drm/xe/vsec: Protect against missing config
This commit prevents PMT registration and telemetry read access when the
soc-remapper callbacks are not configured, specifically targeting Virtual
Function (VF) init paths.
> diff --git a/drivers/gpu/drm/xe/xe_vsec.c b/drivers/gpu/drm/xe/xe_vsec.c
> --- a/drivers/gpu/drm/xe/xe_vsec.c
> +++ b/drivers/gpu/drm/xe/xe_vsec.c
[ ... ]
> @@ -210,6 +210,8 @@ void xe_vsec_init(struct xe_device *xe)
>
> switch (platform) {
> case XE_VSEC_BMG:
> + if (!xe->soc_remapper.set_telem_region)
> + return;
[Severity: Medium]
The commit message mentions that some init paths (VF) will not provide
soc-remapper callbacks. Is it safe to use this feature presence as a proxy
check to prevent execution on Virtual Functions?
According to the SR-IOV guidelines for the xe driver, VFs must be explicitly
blocked from PF-only resource registration using an IS_SRIOV_VF() guard to
prevent hardware failures and MMIO timeouts.
Should this code explicitly check for the VF context instead of relying on
the absence of the set_telem_region callback?
> info->priv_data = &xe_pmt_cb;
[Severity: High]
This is a pre-existing issue, but does assigning xe_pmt_cb here expose us to
unprotected MMIO accesses during suspend?
Since BMG exposes VSEC_CAP_CRASHLOG in xe_vsec_info, the crashlog driver
will probe and create sysfs entries. However, the xe_pmt_cb structure lacks
the .read_reg and .write_reg callbacks.
When userspace accesses crashlog sysfs attributes, the driver will fall back
to using direct readl()/writel() on entry->disc_table.
If the GPU is in D3cold, will these direct accesses bypass runtime PM checks
and attempt to read or write powered-off MMIO, potentially triggering MCE or
AER kernel panics?
> break;
> default:
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260824162317.2450380-12-michael.j.ruhl@intel.com?part=3
next prev parent reply other threads:[~2026-08-24 16:36 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-24 16:23 [PATCH v3 00/10] Crescent Island PMT support Michael J. Ruhl
2026-08-24 16:23 ` [PATCH v3 01/10] platform/x86/intel/pmt: complete pcidev to device update Michael J. Ruhl
2026-08-24 18:56 ` Rodrigo Vivi
2026-08-25 9:40 ` Ilpo Järvinen
2026-08-25 9:25 ` Ilpo Järvinen
2026-08-24 16:23 ` [PATCH v3 02/10] platform/x86/intel/pmt: Add register access callbacks Michael J. Ruhl
2026-08-24 16:36 ` sashiko-bot
2026-08-24 18:39 ` Ruhl, Michael J
2026-08-25 9:34 ` Ilpo Järvinen
2026-08-26 16:13 ` Ruhl, Michael J
2026-08-26 18:30 ` Ilpo Järvinen
2026-08-27 17:05 ` Ruhl, Michael J
2026-08-24 16:23 ` [PATCH v3 03/10] drm/xe/vsec: Protect against missing config Michael J. Ruhl
2026-08-24 16:36 ` sashiko-bot [this message]
2026-08-24 18:43 ` Ruhl, Michael J
2026-08-24 19:01 ` Rodrigo Vivi
2026-08-24 16:23 ` [PATCH v3 04/10] drm/xe/vsec: Use correct pm state get Michael J. Ruhl
2026-08-24 19:04 ` Rodrigo Vivi
2026-08-24 16:23 ` [PATCH v3 05/10] drm/xe/vsec: Support possible hotplug exit Michael J. Ruhl
2026-08-24 19:07 ` Rodrigo Vivi
2026-08-24 16:23 ` [PATCH v3 06/10] drm/xe/vsec: Support Crescent Island PMT Michael J. Ruhl
2026-08-24 16:33 ` sashiko-bot
2026-08-24 19:10 ` Rodrigo Vivi
2026-08-25 10:19 ` Ilpo Järvinen
2026-08-24 16:23 ` [PATCH v3 07/10] drm/xe/vsec: Crescent Island PMT decode Michael J. Ruhl
2026-08-24 16:35 ` sashiko-bot
2026-08-25 10:24 ` Ilpo Järvinen
2026-08-24 16:23 ` [PATCH v3 08/10] drm/xe/vsec: Crescent Island PMT callbacks Michael J. Ruhl
2026-08-24 16:37 ` sashiko-bot
2026-08-24 18:47 ` Ruhl, Michael J
2026-08-24 16:23 ` [PATCH v3 09/10] drm/xe/vsec: Support late bind fw information Michael J. Ruhl
2026-08-24 16:36 ` sashiko-bot
2026-08-24 19:15 ` Rodrigo Vivi
2026-08-26 13:45 ` Ruhl, Michael J
2026-08-25 10:01 ` Ilpo Järvinen
2026-08-24 16:23 ` [PATCH v3 10/10] drm/xe/vsec: Update PMT internal access for CRI Michael J. Ruhl
2026-08-24 19:18 ` Rodrigo Vivi
2026-08-25 10:16 ` Ilpo Järvinen
2026-08-25 6:44 ` ✓ CI.KUnit: success for Crescent Island PMT support (rev5) Patchwork
2026-08-25 7:29 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-25 10:56 ` ✗ 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=20260824163635.C03301F00A3A@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=michael.j.ruhl@intel.com \
--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.