Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: Lucas De Marchi <lucas.demarchi@intel.com>
Cc: Riana Tauro <riana.tauro@intel.com>,
	<igt-dev@lists.freedesktop.org>, <anshuman.gupta@intel.com>,
	<kamil.konieczny@linux.intel.com>,
	<aravind.iddamsetty@linux.intel.com>, <louis.chauvet@bootlin.com>
Subject: Re: [PATCH i-g-t 5/5] tests/intel/xe_configfs: Add test to validate survivability mode
Date: Thu, 24 Apr 2025 09:00:16 -0400	[thread overview]
Message-ID: <aAo14Cz7qkrha4ug@intel.com> (raw)
In-Reply-To: <md6mljnmwsujfhv3up22l6rqhlmfyhg4qicqonkhfetabsako6@z5drpnypwqyr>

On Wed, Apr 23, 2025 at 11:17:33PM -0500, Lucas De Marchi wrote:
> On Tue, Apr 22, 2025 at 03:29:55PM -0400, Rodrigo Vivi wrote:
> > On Tue, Apr 22, 2025 at 08:57:35AM -0500, Lucas De Marchi wrote:
> > > On Tue, Apr 22, 2025 at 03:26:01PM +0530, Riana Tauro wrote:
> > > > The test validates if survivability mode is enabled on supported
> > > > platforms when configured using configfs attribute.
> > > >
> > > > Signed-off-by: Riana Tauro <riana.tauro@intel.com>
> > > > ---
> > > > tests/intel/xe_configfs.c | 112 ++++++++++++++++++++++++++++++++++++++
> > > > tests/meson.build         |   1 +
> > > > 2 files changed, 113 insertions(+)
> > > > create mode 100644 tests/intel/xe_configfs.c
> > > >
> > > > diff --git a/tests/intel/xe_configfs.c b/tests/intel/xe_configfs.c
> > > > new file mode 100644
> > > > index 000000000..414af4a86
> > > > --- /dev/null
> > > > +++ b/tests/intel/xe_configfs.c
> > > 
> > > 
> > > humn... does it make sense to test survivability mode in a xe_configfs
> > > test? configfs is just the way to trigger it. For completly different
> > > areas of the driver I don't think we should bundle the tests into a
> > > configfs test: we don't test if xe can be loaded without display in a
> > > xe_param.c test, or if we can inject faults in a xe_debugfs.c test, etc.
> > > 
> > > My suggestion is to have a dedicated test for survivability in which
> > > configfs is part of it.
> > 
> > Well, that would work for survivability itself. But perhaps it is good
> > to have dedicated entry points for the knobs we expose, like we have
> > a single place to toggle all sysfs and debufs. So we don't forget to
> > add new cases and we have a single entry point to quickly exercises
> > the knobs.
> 
> humn... dunno. The problem I see here is that the answer for "does it it
> work?" is quite different for each configfs file we implement. Some may
> even be honored on probe only vs others that can be set in runtime. If
> we had a generic way to test the configfs like:
> 
> 1) write XYZ to file
> 2) read file
> 3) make sure it's XYZ
> 
> then it'd make sense. But for these tests, checking that is not testing
> much.
> 
> For survivability we should test:
> 
> 	1) bind the module in survivability mode
> 	2) read something to make sure it is in that mode
> 	3) flash the same firmware... possible?

I don't believe it is a good idea to make our validation here to depend
on many other external components. Our role is to put the device in
the survivability mode. So, validating we put the device on that mode
when requested it should be enough.

We could check if the sysfs file is in place and that drm/card is
not in place. Then it would be enough imho...

> 	4) unbind the module and remove configfs
> 	5) bind the module
> 
> For possible other things coming to configfs:
> 
> A) Extra Workarounds
> 
> 	1) write a {gt/engine/lrc} regiter-save-restore
> 	2) bind the module
> 	3) check for each of them, via <debugfs>/register-save-restore that 	   the
> value is correctly set.
> 	4) repeat test for write types like rmw, write, set bit, etc
> 
> B) Fuse off engines in software
> 
> 	1) write a file with the possible possible engines that we should export
> 	2) bind the module
> 	3) check via debugfs that the exposed are at the most those
> 
> C) Do not attempt enabling display (i.e. a substitute to the module
> param)
> 
> ... etc
> 
> Are we going to shove all of them in a xe_configfs test even if the
> tests are totally different? I think it will be harder to maintain, but
> we can always move to something else later if it becomes overwhelming.
> So.. I'm not sure. Any additional thoughts?
> 
> Lucas De Marchi
> 
> > 
> > > 
> > > Lucas De Marchi

  parent reply	other threads:[~2025-04-24 13:00 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-22  9:55 [PATCH i-g-t 0/5] Add test to validate survivability mode Riana Tauro
2025-04-22  9:55 ` [PATCH i-g-t 1/5] lib/igt_aux: Move is_mountpoint() to igt_aux Riana Tauro
2025-04-22  9:55 ` [PATCH i-g-t 2/5] lib/igt_configfs: Add helper to mount configfs Riana Tauro
2025-05-05  5:35   ` Aravind Iddamsetty
2025-05-07 11:05   ` José Expósito
2025-05-07 15:57   ` Kamil Konieczny
2025-04-22  9:55 ` [PATCH i-g-t 3/5] lib/igt_fs: Rename igt_io to igt_fs to add additional helpers Riana Tauro
2025-05-05  5:35   ` Aravind Iddamsetty
2025-05-07 11:08   ` José Expósito
2025-05-07 15:58   ` Kamil Konieczny
2025-04-22  9:56 ` [PATCH i-g-t 4/5] lib/igt_fs: Add helper functions to create and remove directories Riana Tauro
2025-05-05  5:35   ` Aravind Iddamsetty
2025-05-07 13:31   ` José Expósito
2025-05-07 15:48   ` Kamil Konieczny
2025-04-22  9:56 ` [PATCH i-g-t 5/5] tests/intel/xe_configfs: Add test to validate survivability mode Riana Tauro
2025-04-22 13:57   ` Lucas De Marchi
2025-04-22 19:29     ` Rodrigo Vivi
2025-04-24  4:17       ` Lucas De Marchi
2025-04-24  5:41         ` Riana Tauro
2025-05-12 10:54           ` Riana Tauro
2025-05-12 14:50             ` Lucas De Marchi
2025-04-24 13:00         ` Rodrigo Vivi [this message]
2025-05-05  7:08   ` Aravind Iddamsetty
2025-05-13  5:25     ` Riana Tauro
2025-04-22 19:51 ` ✓ i915.CI.BAT: success for Add test to validate survivability mode (rev2) Patchwork
2025-04-23  1:36 ` ✗ Xe.CI.Full: failure " Patchwork
2025-04-23  5:57 ` ✗ i915.CI.Full: " Patchwork
2025-04-23 21:59 ` ✓ Xe.CI.BAT: success " Patchwork
2025-04-24  9:51 ` ✗ 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=aAo14Cz7qkrha4ug@intel.com \
    --to=rodrigo.vivi@intel.com \
    --cc=anshuman.gupta@intel.com \
    --cc=aravind.iddamsetty@linux.intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=kamil.konieczny@linux.intel.com \
    --cc=louis.chauvet@bootlin.com \
    --cc=lucas.demarchi@intel.com \
    --cc=riana.tauro@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