On 5/12/23 11:13, Frode Nordahl wrote:
> On Thu, May 11, 2023 at 11:07 PM Ilya Maximets <[email protected]> wrote:
>>
>> On 5/11/23 18:13, Frode Nordahl wrote:
>>> At present, the system-dpdk-testsuite makes assumptions about
>>> environment configuration, and will error out if DPDK compatible
>>> interfaces not configured for DPDK are present in the system with
>>> a message like:
>>>
>>> EAL: Probe PCI driver: net_virtio (1af4:1000) device: 0000:00:03.0 (socket 
>>> -1)
>>> eth_virtio_pci_init(): Failed to init PCI device
>>> EAL: Requested device 0000:00:03.0 cannot be used
>>
>> Hmm.  We should probably pass --no-pci to all tests that
>> do not use physical ports.  We might add an argument to
>> OVS_DPDK_START/OVS_DPDK_START_VSWITCHD to indicate phy tests.
>> It should make tests a bit faster, since no unnecessary PCI
>> scans will be performed.
>>
>> Will that solve the issue for you?
> 
> Yes, it would, and thank you for the suggestion/direction.
> 
> m4 does not appear to be too flexible wrt. conditional processing

Just FYI, there is an m4_if and m4_if_val.  These should be enough.
But what you have in v3 should also be fine.  I'll take a closer
look at it tomorrow.

> of macro arguments, so would you be ok with me adding an argument that
> would end up in the dpdk-extra config directly? At least it would be more
> declared/defined than passing in arbitrary values from the environment.
> 
> Something like:
> --- a/tests/system-dpdk-macros.at
> +++ b/tests/system-dpdk-macros.at
> @@ -42,7 +42,7 @@ m4_define([OVS_DPDK_START],
>     OVS_DPDK_START_OVSDB()
>     dnl Enable DPDK functionality
>     AT_CHECK([ovs-vsctl --no-wait set Open_vSwitch .
> other_config:dpdk-init=true])
> -   OVS_DPDK_START_VSWITCHD()
> +   OVS_DPDK_START_VSWITCHD($1)
>  ])
> 
>  # OVS_DPDK_START_OVSDB()
> @@ -72,7 +72,7 @@ m4_define([OVS_DPDK_START_OVSDB],
>  #
>  m4_define([OVS_DPDK_START_VSWITCHD],
>    [dnl Change DPDK drivers log levels so that tests only catch errors
> -   AT_CHECK([ovs-vsctl --no-wait set Open_vSwitch .
> other_config:dpdk-extra=--log-level=pmd.*:error])
> +   AT_CHECK([ovs-vsctl --no-wait set Open_vSwitch .
> other_config:dpdk-extra="--log-level=pmd.*:error $1"])
> 
>     dnl Start ovs-vswitchd.
>     AT_CHECK([ovs-vswitchd --detach --no-chdir --pidfile --log-file
> -vvconn -vofproto_dpif -vunixctl], [0], [stdout], [stderr])
> 
> --
> Frode Nordahl
> 
>> Best regards, Ilya Maximets.
>>
>>>
>>> The system-dpdk-testsuite is useful even with no DPDK PHY
>>> available, as the tests requiring a PHY will skip gracefully when
>>> none present.
>>>
>>> This patch allows passing in values that will be set in
>>> `other_config:dpdk-extra` before the test runs, which among
>>> other things, would allow to use the DPDK EAL block (-b) and
>>> allow (-a) options.  Having those available would make it possible
>>> to run the testsuite unaltered in more environments.
>>>
>>> We will use this patch in a follow-up, enabling more elaborate
>>> Debian autopkgtests for Open vSwitch.
>>>
>>> Signed-off-by: Frode Nordahl <[email protected]>
>>> ---
>>>  tests/system-dpdk-macros.at | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/tests/system-dpdk-macros.at b/tests/system-dpdk-macros.at
>>> index 53fbc1320..c74e8a0f1 100644
>>> --- a/tests/system-dpdk-macros.at
>>> +++ b/tests/system-dpdk-macros.at
>>> @@ -72,7 +72,7 @@ m4_define([OVS_DPDK_START_OVSDB],
>>>  #
>>>  m4_define([OVS_DPDK_START_VSWITCHD],
>>>    [dnl Change DPDK drivers log levels so that tests only catch errors
>>> -   AT_CHECK([ovs-vsctl --no-wait set Open_vSwitch . 
>>> other_config:dpdk-extra=--log-level=pmd.*:error])
>>> +   AT_CHECK([ovs-vsctl --no-wait set Open_vSwitch . 
>>> other_config:dpdk-extra="--log-level=pmd.*:error $TESTSUITE_DPDK_EXTRA"])
>>>
>>>     dnl Start ovs-vswitchd.
>>>     AT_CHECK([ovs-vswitchd --detach --no-chdir --pidfile --log-file -vvconn 
>>> -vofproto_dpif -vunixctl], [0], [stdout], [stderr])
>>

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to