From: John Harrison <john.c.harrison@intel.com>
To: Michal Wajdeczko <michal.wajdeczko@intel.com>,
<intel-xe@lists.freedesktop.org>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Subject: Re: [PATCH v4 07/11] drm/xe/configfs: Reintroduce struct xe_config_device
Date: Mon, 28 Jul 2025 17:06:08 -0700 [thread overview]
Message-ID: <c0281f35-d672-41ea-9bef-a0bb588f060f@intel.com> (raw)
In-Reply-To: <20250727172009.587-8-michal.wajdeczko@intel.com>
On 7/27/2025 10:20 AM, Michal Wajdeczko wrote:
> This time it will hold just pure configuration parameters, without
> any configfs related stuff. This will help us define defaults data
> without wasting space for unneeded data.
>
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Reviewed-by: John Harrison <John.C.Harrison@Intel.com>
> ---
> drivers/gpu/drm/xe/xe_configfs.c | 27 +++++++++++++++++----------
> 1 file changed, 17 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_configfs.c b/drivers/gpu/drm/xe/xe_configfs.c
> index f5a780b8bb80..a5f13dd779c7 100644
> --- a/drivers/gpu/drm/xe/xe_configfs.c
> +++ b/drivers/gpu/drm/xe/xe_configfs.c
> @@ -92,8 +92,10 @@
> struct xe_config_group_device {
> struct config_group group;
>
> - bool survivability_mode;
> - u64 engines_allowed;
> + struct xe_config_device {
> + bool survivability_mode;
> + u64 engines_allowed;
> + } config;
> };
>
> struct engine_info {
> @@ -119,16 +121,21 @@ static struct xe_config_group_device *to_xe_config_group_device(struct config_it
> return container_of(to_config_group(item), struct xe_config_group_device, group);
> }
>
> +static struct xe_config_device *to_xe_config_device(struct config_item *item)
> +{
> + return &to_xe_config_group_device(item)->config;
> +}
> +
> static ssize_t survivability_mode_show(struct config_item *item, char *page)
> {
> - struct xe_config_group_device *dev = to_xe_config_group_device(item);
> + struct xe_config_device *dev = to_xe_config_device(item);
>
> return sprintf(page, "%d\n", dev->survivability_mode);
> }
>
> static ssize_t survivability_mode_store(struct config_item *item, const char *page, size_t len)
> {
> - struct xe_config_group_device *dev = to_xe_config_group_device(item);
> + struct xe_config_device *dev = to_xe_config_device(item);
> bool survivability_mode;
> int ret;
>
> @@ -144,7 +151,7 @@ static ssize_t survivability_mode_store(struct config_item *item, const char *pa
>
> static ssize_t engines_allowed_show(struct config_item *item, char *page)
> {
> - struct xe_config_group_device *dev = to_xe_config_group_device(item);
> + struct xe_config_device *dev = to_xe_config_device(item);
> char *p = page;
>
> for (size_t i = 0; i < ARRAY_SIZE(engine_info); i++) {
> @@ -199,7 +206,7 @@ static bool lookup_engine_mask(const char *pattern, u64 *mask)
> static ssize_t engines_allowed_store(struct config_item *item, const char *page,
> size_t len)
> {
> - struct xe_config_group_device *dev = to_xe_config_group_device(item);
> + struct xe_config_device *dev = to_xe_config_device(item);
> size_t patternlen, p;
> u64 mask, val = 0;
>
> @@ -280,7 +287,7 @@ static struct config_group *xe_config_make_device_group(struct config_group *gro
> return ERR_PTR(-ENOMEM);
>
> /* Default values */
> - dev->engines_allowed = U64_MAX;
> + dev->config.engines_allowed = U64_MAX;
>
> config_group_init_type_name(&dev->group, name, &xe_config_device_type);
>
> @@ -334,7 +341,7 @@ bool xe_configfs_get_survivability_mode(struct pci_dev *pdev)
> if (!dev)
> return false;
>
> - mode = dev->survivability_mode;
> + mode = dev->config.survivability_mode;
> config_group_put(&dev->group);
>
> return mode;
> @@ -355,7 +362,7 @@ void xe_configfs_clear_survivability_mode(struct pci_dev *pdev)
> return;
>
> scoped_guard(mutex, &xe_configfs.su_mutex)
> - dev->survivability_mode = 0;
> + dev->config.survivability_mode = 0;
>
> config_group_put(&dev->group);
> }
> @@ -377,7 +384,7 @@ u64 xe_configfs_get_engines_allowed(struct pci_dev *pdev)
> if (!dev)
> return U64_MAX;
>
> - engines_allowed = dev->engines_allowed;
> + engines_allowed = dev->config.engines_allowed;
> config_group_put(&dev->group);
>
> return engines_allowed;
next prev parent reply other threads:[~2025-07-29 0:06 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-27 17:19 [PATCH v4 00/11] Updates for drm/xe/configfs Michal Wajdeczko
2025-07-27 17:19 ` [PATCH v4 01/11] drm/xe: Simplify module initialization code Michal Wajdeczko
2025-07-28 19:35 ` Rodrigo Vivi
2025-07-28 19:47 ` Michal Wajdeczko
2025-07-28 20:00 ` Rodrigo Vivi
2025-07-28 23:52 ` John Harrison
2025-07-29 8:39 ` Michal Wajdeczko
2025-07-27 17:19 ` [PATCH v4 02/11] drm/xe: Print module init abort code Michal Wajdeczko
2025-07-28 19:39 ` Rodrigo Vivi
2025-07-28 19:51 ` Michal Wajdeczko
2025-07-28 19:59 ` Rodrigo Vivi
2025-07-27 17:20 ` [PATCH v4 03/11] drm/xe/configfs: Destroy xe_configfs.su_mutex on exit/error Michal Wajdeczko
2025-07-28 19:42 ` Rodrigo Vivi
2025-07-27 17:20 ` [PATCH v4 04/11] drm/xe/configfs: Use mutex from xe_configfs subsystem Michal Wajdeczko
2025-07-28 19:50 ` Rodrigo Vivi
2025-07-28 19:55 ` Michal Wajdeczko
2025-07-27 17:20 ` [PATCH v4 05/11] drm/xe/configfs: Rename struct xe_config_device Michal Wajdeczko
2025-07-28 19:54 ` Rodrigo Vivi
2025-07-27 17:20 ` [PATCH v4 06/11] drm/xe/configfs: Rename configfs_find_group() helper Michal Wajdeczko
2025-07-28 19:57 ` Rodrigo Vivi
2025-07-27 17:20 ` [PATCH v4 07/11] drm/xe/configfs: Reintroduce struct xe_config_device Michal Wajdeczko
2025-07-29 0:06 ` John Harrison [this message]
2025-07-27 17:20 ` [PATCH v4 08/11] drm/xe/configfs: Keep default device config settings together Michal Wajdeczko
2025-07-29 0:07 ` John Harrison
2025-07-27 17:20 ` [PATCH v4 09/11] drm/xe/configfs: Check if device was preconfigured Michal Wajdeczko
2025-07-29 0:11 ` John Harrison
2025-07-27 17:20 ` [PATCH v4 10/11] drm/xe/configfs: Only allow configurations for supported devices Michal Wajdeczko
2025-07-27 17:20 ` [PATCH v4 11/11] drm/xe/configfs: Allow adding configurations for future VFs Michal Wajdeczko
2025-07-27 17:28 ` ✓ CI.KUnit: success for Updates for drm/xe/configfs (rev5) Patchwork
2025-07-27 18:07 ` ✓ Xe.CI.BAT: " Patchwork
2025-07-27 19:09 ` ✓ Xe.CI.Full: " 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=c0281f35-d672-41ea-9bef-a0bb588f060f@intel.com \
--to=john.c.harrison@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=lucas.demarchi@intel.com \
--cc=michal.wajdeczko@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