[Intel-xe] [PATCH 0/4] RFC: Add new device configuration infrastructure to
Summers, Stuart
stuart.summers at intel.com
Thu Apr 20 17:45:02 UTC 2023
On Thu, 2023-04-20 at 12:32 +0300, Jani Nikula wrote:
> On Wed, 19 Apr 2023, Stuart Summers <stuart.summers at intel.com> wrote:
> > This is attempting to take the best parts of i915 module parameters
> > (minus the actual module parameters) and add to xe to allow for
> > better
> > debuggability and configuration in order to help isolate problems
> > on a per-device level instead of global module parameters.
> >
> > Note that I did review a few options here: configfs (not generally
> > used by the drm stack), module parameters (we have some negative
> > history here), sysfs (not the right approach given the focus on
> > user interface here). Debugfs is used in various drm drivers to
> > configure various device characteristics. The infrastructure being
> > presented here has at a high level been present in the i915 driver
> > for some years now, so provides a good starting point for quick
> > debug additions without exposing users to some of the challenges
> > faced with module parameters in the past.
>
> Looking into configfs has been on my todo list for a long time. It's
> something that often gets recommended as a replacement to module
> parameters, but the documentation as well as the existing examples in
> the kernel are, I think, less than stellar. Basically would require
> implementing it and seeing how it actually works.
Really appreciate that perspective! Yes I understand. Let me take a
closer look here and see what might make the most sense.
>
> In any case, I don't think it should be dismissed with just "not
> generally used by the drm stack". A decent implementation could set
> the
> example going forward.
>
> The main problem with debugfs is the inability to set the default
> values
> prior to probing the device. This is where module parameters are
> handy,
> but they aren't device specific (and, as you note, generally
> discouraged).
>
> Looking at the patches, I'm not sure I understand what the procedure
> for
> setting the debugfs values before probing the device would be. Can
> you
> provide an example sequence on the command-line please?
Well it doesn't seem to be working for me here... so for now let's hold
on this. I'll dig deeper and post an update with examples.
Thanks,
Stuart
>
>
> BR,
> Jani.
>
> > Stuart Summers (4):
> > drm/xe: Refactor early device init
> > drm/xe: Refactor debugfs into an early and late part
> > drm/xe: Add new device configuration debugfs infrastructure
> > drm/xe: Migrate module parameters to new debugfs structure
> >
> > drivers/gpu/drm/xe/Makefile | 1 +
> > drivers/gpu/drm/xe/xe_debugfs.c | 14 +-
> > drivers/gpu/drm/xe/xe_debugfs.h | 1 +
> > drivers/gpu/drm/xe/xe_debugfs_params.c | 235
> > +++++++++++++++++++++++++
> > drivers/gpu/drm/xe/xe_debugfs_params.h | 14 ++
> > drivers/gpu/drm/xe/xe_device.c | 23 ++-
> > drivers/gpu/drm/xe/xe_device.h | 4 +-
> > drivers/gpu/drm/xe/xe_device_types.h | 4 +
> > drivers/gpu/drm/xe/xe_display.c | 3 +-
> > drivers/gpu/drm/xe/xe_guc_log.c | 2 +-
> > drivers/gpu/drm/xe/xe_mmio.c | 4 +-
> > drivers/gpu/drm/xe/xe_module.c | 16 --
> > drivers/gpu/drm/xe/xe_module.h | 5 -
> > drivers/gpu/drm/xe/xe_params.c | 118 +++++++++++++
> > drivers/gpu/drm/xe/xe_params.h | 43 +++++
> > drivers/gpu/drm/xe/xe_pci.c | 14 +-
> > 16 files changed, 461 insertions(+), 40 deletions(-)
> > create mode 100644 drivers/gpu/drm/xe/xe_debugfs_params.c
> > create mode 100644 drivers/gpu/drm/xe/xe_debugfs_params.h
> > create mode 100644 drivers/gpu/drm/xe/xe_params.c
> > create mode 100644 drivers/gpu/drm/xe/xe_params.h
More information about the Intel-xe
mailing list