On Wed, 2024-05-15 at 13:24 +0200, Karolina Stolarek wrote: > List improvements for the test suite with some notes. > > Signed-off-by: Karolina Stolarek <karolina.stolarek@xxxxxxxxx> LGTM. Reviewed-by: Thomas Hellström <thomas.hellstrom@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/ttm/tests/TODO | 25 +++++++++++++++++++++++++ > 1 file changed, 25 insertions(+) > create mode 100644 drivers/gpu/drm/ttm/tests/TODO > > diff --git a/drivers/gpu/drm/ttm/tests/TODO > b/drivers/gpu/drm/ttm/tests/TODO > new file mode 100644 > index 000000000000..b48d83b6166e > --- /dev/null > +++ b/drivers/gpu/drm/ttm/tests/TODO > @@ -0,0 +1,25 @@ > +TODO > +===== > + > +- Add a test case where the only evictable BO is busy > +- Update eviction tests so they use parametrized "from" memory type > +- Improve mock manager's implementation, e.g. allocate a block of > + dummy memory that can be used when testing page mapping functions > +- Suggestion: Add test cases with external BOs > +- Suggestion: randomize the number and size of tested buffers in > + ttm_bo_validate() > +- Agree on the naming convention > + > +Notes and gotchas > +================= > + > +- These tests are built and run with a UML kernel, because > + 1) We are interested in hardware-independent testing > + 2) We don't want to have actual DRM devices interacting with TTM > + at the same time as the test one. Getting these to work in > + parallel would require some time (...and that's a "todo" in > itself!) > +- Triggering ttm_bo_vm_ops callbacks from KUnit (i.e. kernel) might > be > + a challenge, but is worth trying. Look at selftests like > + i915/gem/selftests/i915_gem_mman.c for inspiration > +- The test suite uses UML where ioremap() call returns NULL, meaning > that > + ttm_bo_ioremap() can't be tested, unless we find a way to stub it