On 7/2/25 3:55 PM, Eelco Chaudron wrote:
> 
> 
> On 30 Jun 2025, at 19:09, Ilya Maximets wrote:
> 
>> Retis is very useful for debugging our system tests or debugging
>> kernel issues through our system tests.  This change adds a convenient
>> way to run any kernel system test with the retis capture on the
>> background.  E.g.:
>>
>>   make check-kernel OVS_TEST_WITH_RETIS=yes TESTSUITEFLAGS='167 -d'
>>
>> Retis 1.5 is required, since we're using ifdump profile, and it also
>> will mount debugfs for us in case of running in a different namespace.
>> It should be available in $PATH.
>>
>> In addition to just capturing the retis.data, we're also running the
>> capture with --print to print all the events as they appear, and
>> producing the sorted output in the end.  This makes it easier to work
>> across systems with different versions of retis and saves time for
>> running the sort manually.  The raw data is still available for
>> advanced processing, if needed.
>>
>> Not specifying any particular collector, capturing everything that's
>> enabled by default.  OVS tracking is turned on by default.
>>
>> Since OVS tracking is used, it's required to start retis after the
>> kernel datapath is created, otherwise it will fail to obtain the map
>> of upcall PIDs.  That's why we need to start it after the bridge is
>> created.
>>
>> Only adding support for kernel-related test suites for now.  For
>> userspace test suites it may also be useful at some point, but
>> currently that requires running without --ovs-track and isn't too
>> important.
>>
>> Startup of the retis capture adds significant amount of time to each
>> test, so not running it by default.
>>
>> Link: https://github.com/retis-org/retis
>> Signed-off-by: Ilya Maximets <[email protected]>
>> ---
> 
> Thanks, Ilya, for adding this cool test feature! I have one small comment on 
> the doc update, with that addressed, it looks fine to me.
> 
> Acked-by: Eelco Chaudron <[email protected]>
> 
>>  Documentation/topics/testing.rst          | 22 ++++++++++++++++++++++
>>  NEWS                                      |  3 +++
>>  tests/ovs-macros.at                       | 10 ++++++++++
>>  tests/system-kmod-macros.at               |  3 +++
>>  tests/system-offloads-testsuite-macros.at |  3 +++
>>  5 files changed, 41 insertions(+)
>>
>> diff --git a/Documentation/topics/testing.rst 
>> b/Documentation/topics/testing.rst
>> index b97bf32a9..78f38ecf5 100644
>> --- a/Documentation/topics/testing.rst
>> +++ b/Documentation/topics/testing.rst
>> @@ -455,6 +455,28 @@ datapath testsuite.
>>
>>   https://git.kernel.org/pub/scm/network/iproute2/iproute2.git
>>
>> +It is also possible to run `retis`_ capture along with the tests by setting
>> +`OVS_TEST_WITH_RETIS` environment variable to 'yes'.  This can be useful for
> 
> Maybe explicitly mention this is only for the kernel and offload test cases.
> Something like:
> 
> It is also possible to run `retis`_ capture along with the 'check-kernel' and
> 'check-offloads' tests by setting `OVS_TEST_WITH_RETIS` environment…

This part of the doc is about kernel datapath, but sure, I can make the change
before applying, so it's a bit more clear.  Thanks!

Best regards, Ilya Maximets.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to