From: Michal Wajdeczko <michal.wajdeczko@intel.com>
To: Matt Roper <matthew.d.roper@intel.com>,
Stuart Summers <stuart.summers@intel.com>,
Jani Nikula <jani.nikula@linux.intel.com>
Cc: <intel-xe@lists.freedesktop.org>, <rodrigo.vivi@intel.com>,
<matthew.brost@intel.com>, <umesh.nerlige.ramappa@intel.com>,
<daniele.ceraolospurio@intel.com>, <shuicheng.lin@intel.com>
Subject: Re: [PATCH 04/10] drm/xe: Add a new debug focused configfs group
Date: Sun, 23 Aug 2026 23:22:21 +0200 [thread overview]
Message-ID: <face4f61-b67c-4dca-ae02-a32cef75dbc9@intel.com> (raw)
In-Reply-To: <20260821220853.GG681121@mdroper-desk1.amr.corp.intel.com>
On 8/22/2026 12:08 AM, Matt Roper wrote:
> On Thu, Aug 20, 2026 at 09:06:43PM +0000, Stuart Summers wrote:
>> Add the skeleton code for a new debug specific configfs group.
>> Just add the structure for now. Actual debug content will be
>> added in a subsequent patch.
>>
>> Signed-off-by: Stuart Summers <stuart.summers@intel.com>
>> Assisted-by: Copilot:claude-sonnet-4.6,claude-opus-4.7
>> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> ---
>> drivers/gpu/drm/xe/Makefile | 2 ++
>> drivers/gpu/drm/xe/xe_configfs.c | 5 +++++
>> drivers/gpu/drm/xe/xe_configfs_debug.c | 14 ++++++++++++++
>> drivers/gpu/drm/xe/xe_configfs_debug.h | 13 +++++++++++++
>> drivers/gpu/drm/xe/xe_configfs_types.h | 3 +++
>> 5 files changed, 37 insertions(+)
>> create mode 100644 drivers/gpu/drm/xe/xe_configfs_debug.c
>> create mode 100644 drivers/gpu/drm/xe/xe_configfs_debug.h
>>
>> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
>> index 92134709d998..0b71f311c9c4 100644
>> --- a/drivers/gpu/drm/xe/Makefile
>> +++ b/drivers/gpu/drm/xe/Makefile
>> @@ -163,6 +163,8 @@ xe-$(CONFIG_HWMON) += xe_hwmon.o
>>
>> xe-$(CONFIG_PERF_EVENTS) += xe_pmu.o
>> xe-$(CONFIG_CONFIGFS_FS) += xe_configfs.o
>
> Not really an issue with your patch here, but since we're messing with
> kconfig stuff it reminds me --- I'm not sure our pre-existing configfs
> kconfig handling is entirely correct (and I think I've seen kernel test
> robot warnings about that too). The concern is that our header file
> does a typical IS_ENABLED(CONFIG_CONFIGFS) type of check to decide
> between extern function declarations or noop stubs. But if Xe is built
> into the bzImage, but configfs is configured as a .ko, then Xe can't
> reach the configfs functions. I believe there's an IS_REACHABLE() that
> maybe we should be using instead, although I haven't got around to
> actually looking closer and trying it out myself.
I was already trying to use IS_REACHABLE [1] but Jani is against it [2]
[1] https://patchwork.freedesktop.org/patch/696103/?series=159395&rev=1
[2] https://lore.kernel.org/intel-xe/e22a535a6405412aaeb0f2251733840b72c93b56@intel.com/
>
> Your actual changes in this patch look okay to me.
>
> Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
>
>
> Matt
>
>> +xe_debug_configfs_obj-$(CONFIG_DRM_XE_DEBUG) := xe_configfs_debug.o
>> +xe-$(CONFIG_CONFIGFS_FS) += $(xe_debug_configfs_obj-y)
>>
>> # graphics virtualization (SR-IOV) support
>> xe-y += \
>> diff --git a/drivers/gpu/drm/xe/xe_configfs.c b/drivers/gpu/drm/xe/xe_configfs.c
>> index 029c9f682c8e..33aea1150c86 100644
>> --- a/drivers/gpu/drm/xe/xe_configfs.c
>> +++ b/drivers/gpu/drm/xe/xe_configfs.c
>> @@ -14,6 +14,7 @@
>>
>> #include "instructions/xe_mi_commands.h"
>> #include "xe_configfs.h"
>> +#include "xe_configfs_debug.h"
>> #include "xe_defaults.h"
>> #include "xe_gt_types.h"
>> #include "xe_module.h"
>> @@ -1242,6 +1243,10 @@ static struct config_group *xe_config_make_device_group(struct config_group *gro
>> config_group_init_type_name(&dev->sriov, "sriov", &xe_config_sriov_type);
>> configfs_add_default_group(&dev->sriov, &dev->group);
>> }
>> +#if IS_ENABLED(CONFIG_DRM_XE_DEBUG)
>> + config_group_init_type_name(&dev->debug, "debug", &xe_configfs_debug_type);
>> + configfs_add_default_group(&dev->debug, &dev->group);
>> +#endif
>>
>> mutex_init(&dev->lock);
>>
>> diff --git a/drivers/gpu/drm/xe/xe_configfs_debug.c b/drivers/gpu/drm/xe/xe_configfs_debug.c
>> new file mode 100644
>> index 000000000000..45617282cec5
>> --- /dev/null
>> +++ b/drivers/gpu/drm/xe/xe_configfs_debug.c
>> @@ -0,0 +1,14 @@
>> +// SPDX-License-Identifier: MIT
>> +/*
>> + * Copyright © 2026 Intel Corporation
>> + */
>> +
>> +#include <linux/configfs.h>
>> +#include <linux/module.h>
>> +
>> +#include "xe_configfs_debug.h"
>> +#include "xe_configfs_types.h"
>> +
>> +const struct config_item_type xe_configfs_debug_type = {
>> + .ct_owner = THIS_MODULE,
>> +};
>> diff --git a/drivers/gpu/drm/xe/xe_configfs_debug.h b/drivers/gpu/drm/xe/xe_configfs_debug.h
>> new file mode 100644
>> index 000000000000..5f938450aed2
>> --- /dev/null
>> +++ b/drivers/gpu/drm/xe/xe_configfs_debug.h
>> @@ -0,0 +1,13 @@
>> +/* SPDX-License-Identifier: MIT */
>> +/*
>> + * Copyright © 2026 Intel Corporation
>> + */
>> +#ifndef _XE_CONFIGFS_DEBUG_H_
>> +#define _XE_CONFIGFS_DEBUG_H_
>> +
>> +#if IS_ENABLED(CONFIG_DRM_XE_DEBUG) && IS_ENABLED(CONFIG_CONFIGFS_FS)
>> +struct config_item_type;
>> +extern const struct config_item_type xe_configfs_debug_type;
>> +#endif
>> +
>> +#endif /* _XE_CONFIGFS_DEBUG_H_ */
>> diff --git a/drivers/gpu/drm/xe/xe_configfs_types.h b/drivers/gpu/drm/xe/xe_configfs_types.h
>> index 3be7d6160b4c..e22b9424f719 100644
>> --- a/drivers/gpu/drm/xe/xe_configfs_types.h
>> +++ b/drivers/gpu/drm/xe/xe_configfs_types.h
>> @@ -22,6 +22,9 @@ struct wa_bb {
>> struct xe_config_group_device {
>> struct config_group group;
>> struct config_group sriov;
>> +#if IS_ENABLED(CONFIG_DRM_XE_DEBUG)
>> + struct config_group debug;
>> +#endif
>>
>> /*
>> * Fields sorted by type (largest first) then name: struct arrays,
>> --
>> 2.43.0
>>
>
next prev parent reply other threads:[~2026-08-23 21:22 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-20 21:06 [PATCH 00/10] Add new debug infrastructure for configfs Stuart Summers
2026-08-20 21:06 ` [PATCH 01/10] drm/xe: Guard configfs attribute reads in getters Stuart Summers
2026-08-20 21:24 ` sashiko-bot
2026-08-21 20:42 ` Matt Roper
2026-08-24 14:45 ` Summers, Stuart
2026-08-20 21:06 ` [PATCH 02/10] drm/xe: Sort xe_config_device fields Stuart Summers
2026-08-20 21:24 ` sashiko-bot
2026-08-21 21:06 ` Matt Roper
2026-08-24 16:52 ` Summers, Stuart
2026-08-20 21:06 ` [PATCH 03/10] drm/xe: Split out configfs data structures Stuart Summers
2026-08-21 21:16 ` Matt Roper
2026-08-24 20:18 ` Summers, Stuart
2026-08-20 21:06 ` [PATCH 04/10] drm/xe: Add a new debug focused configfs group Stuart Summers
2026-08-21 22:08 ` Matt Roper
2026-08-23 21:22 ` Michal Wajdeczko [this message]
2026-08-24 20:18 ` Summers, Stuart
2026-08-20 21:06 ` [PATCH 05/10] drm/xe: Move debug configfs entries to xe_configfs_debug.c Stuart Summers
2026-08-20 21:28 ` sashiko-bot
2026-08-21 22:18 ` Matt Roper
2026-08-24 20:28 ` Summers, Stuart
2026-08-26 21:20 ` Rodrigo Vivi
2026-08-20 21:06 ` [PATCH 06/10] drm/xe/guc: Add configfs support for guc_log_level Stuart Summers
2026-08-20 21:06 ` [PATCH 07/10] drm/xe/guc: Add support for NPK as a GuC log target Stuart Summers
2026-08-20 21:06 ` [PATCH 08/10] drm/xe: Add infrastructure for debug configfs parameters Stuart Summers
2026-08-20 21:06 ` [PATCH 09/10] drm/xe: Migrate existing debug configfs entries to params infrastructure Stuart Summers
2026-08-20 21:06 ` [PATCH 10/10] drm/xe: Taint kernel when debug configfs parameters are set Stuart Summers
2026-08-20 21:24 ` sashiko-bot
2026-08-20 22:12 ` ✗ CI.checkpatch: warning for Add new debug infrastructure for configfs (rev7) Patchwork
2026-08-20 22:13 ` ✓ CI.KUnit: success " Patchwork
2026-08-20 22:52 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-21 1:28 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-08-21 19:27 ` [PATCH 00/10] Add new debug infrastructure for configfs Summers, Stuart
-- strict thread matches above, loose matches on Subject: below --
2026-08-20 20:07 Stuart Summers
2026-08-20 20:07 ` [PATCH 04/10] drm/xe: Add a new debug focused configfs group Stuart Summers
2026-08-07 19:45 [PATCH 00/10] Add new debug infrastructure for configfs Stuart Summers
2026-08-07 19:45 ` [PATCH 04/10] drm/xe: Add a new debug focused configfs group Stuart Summers
2026-08-05 23:20 [PATCH 00/10] Add new debug infrastructure for configfs Stuart Summers
2026-08-05 23:20 ` [PATCH 04/10] drm/xe: Add a new debug focused configfs group Stuart Summers
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=face4f61-b67c-4dca-ae02-a32cef75dbc9@intel.com \
--to=michal.wajdeczko@intel.com \
--cc=daniele.ceraolospurio@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=jani.nikula@linux.intel.com \
--cc=matthew.brost@intel.com \
--cc=matthew.d.roper@intel.com \
--cc=rodrigo.vivi@intel.com \
--cc=shuicheng.lin@intel.com \
--cc=stuart.summers@intel.com \
--cc=umesh.nerlige.ramappa@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox