mbox series

[v2,0/3] simplify unit-testing of rawdevs

Message ID 20200910164716.1011901-1-bruce.richardson@intel.com (mailing list archive)
Headers
Series simplify unit-testing of rawdevs |

Message

Bruce Richardson Sept. 10, 2020, 4:47 p.m. UTC
  At present the "rawdev_autotest" command creates a skeleton rawdev and runs
a series of tests on the rawdev API and on that rawdev. While the rawdev
API set includes a "selftest" function, it is not hooked up to this test so
to test an individual rawdev driver, e.g. ioat, requires that a new test
command be added.

This patchset improves the situation by changing the UT to first run the
existing API tests, but then call selftest on all rawdevs on the system.
This removes the need for any new test commands for new drivers. If there
are multiple rawdevs on a system, the sub-set to be tested can be limited
via existing means such as using the device block/allow EAL parameters or
similarly via vdev args, etc.

As part of this change, the ioat rawdev autotest is fixed to allow calling
on multiple instances inside the one test run, and thereafter the custom
test command for it is removed as it is no longer necessary. 

Depends-on: series-12105 ("Enhance rawdev APIs")

V2:
 - dropped patch 2, which had ioat-only changes to debug prints, and wasn't
   relevant to the rest of the set
 - improved the naming of the test functions in test_rawdev.c
 - added release note entry for these changes

Bruce Richardson (3):
  raw/ioat: support multiple devices being tested
  app/test: change rawdev autotest to run selftest on all devs
  app/test: remove ioat-specific autotest

 app/test/test_rawdev.c                 | 34 +++++++++++++++++---------
 doc/guides/rel_notes/release_20_11.rst |  7 ++++++
 drivers/raw/ioat/ioat_rawdev_test.c    | 17 ++++++++++---
 3 files changed, 42 insertions(+), 16 deletions(-)
  

Comments

Thomas Monjalon Oct. 6, 2020, 7:28 a.m. UTC | #1
> At present the "rawdev_autotest" command creates a skeleton rawdev and runs
> a series of tests on the rawdev API and on that rawdev. While the rawdev
> API set includes a "selftest" function, it is not hooked up to this test so
> to test an individual rawdev driver, e.g. ioat, requires that a new test
> command be added.
> 
> This patchset improves the situation by changing the UT to first run the
> existing API tests, but then call selftest on all rawdevs on the system.
> This removes the need for any new test commands for new drivers. If there
> are multiple rawdevs on a system, the sub-set to be tested can be limited
> via existing means such as using the device block/allow EAL parameters or
> similarly via vdev args, etc.
> 
> As part of this change, the ioat rawdev autotest is fixed to allow calling
> on multiple instances inside the one test run, and thereafter the custom
> test command for it is removed as it is no longer necessary.

Applied, thanks