On Mon, Jun 29, 2020 at 12:09:20PM +0200, David Marchand wrote:
> On Wed, May 27, 2020 at 4:58 PM Bruce Richardson
> <bruce.richard...@intel.com> wrote:
> >
> > If the bonding pmd is disabled, all autotest associated with it should be
> > disabled. However, some of those tests also depended upon the ring PMD so
> > were placed in a block depending on that driver - and unfortunately that
> > driver alone. This caused build failures if the ring PMD was enabled but
> > the bonding PMD disabled, due to missing header files and driver libs.
> >
> > This error can be reproduced by configuring DPDK using e.g.
> >
> >   meson configure -Ddisable_drivers=net/[!r]* build
> >
> > (which will disable all drivers not starting with "r"), and then building
> > using ninja.
> >
> > Fix this by moving all link bonding autotests to the one block and putting
> > a second conditional check within that block for those also requiring the
> > ring PMD.
> >
> > Fixes: 7f6ef1664027 ("test/bonding: allow disabling driver")
> > Fixes: 207b1c813f39 ("test: fix build without ring PMD")
> > Cc: reshma.pat...@intel.com
> >
> > Signed-off-by: Bruce Richardson <bruce.richard...@intel.com>
> > ---
> >  app/test/meson.build | 6 ++++--
> >  1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/app/test/meson.build b/app/test/meson.build
> > index 1715ddbcb..dc2474699 100644
> > --- a/app/test/meson.build
> > +++ b/app/test/meson.build
> > @@ -350,6 +350,10 @@ if dpdk_conf.has('RTE_LIBRTE_BOND_PMD')
> >         test_deps += 'pmd_bond'
> >         test_sources += ['test_link_bonding.c', 
> > 'test_link_bonding_rssconf.c']
> >         driver_test_names += ['link_bonding_autotest', 
> > 'link_bonding_rssconf_autotest']
> > +       if dpdk_conf.has('RTE_LIBRTE_RING_PMD')
> > +               test_sources += 'test_link_bonding_mode4.c'
> > +               driver_test_names += 'link_bonding_mode4_autotest'
> > +       endif
> >  endif
> >  if dpdk_conf.has('RTE_LIBRTE_RING_PMD')
> >         test_deps += 'pmd_ring'
> > @@ -358,7 +362,6 @@ if dpdk_conf.has('RTE_LIBRTE_RING_PMD')
> >         test_sources += 'test_event_eth_tx_adapter.c'
> >         test_sources += 'test_bitratestats.c'
> >         test_sources += 'test_latencystats.c'
> > -       test_sources += 'test_link_bonding_mode4.c'
> >         test_sources += 'sample_packet_forward.c'
> >         test_sources += 'test_pdump.c'
> >         fast_tests += [['ring_pmd_autotest', true]]
> > @@ -366,7 +369,6 @@ if dpdk_conf.has('RTE_LIBRTE_RING_PMD')
> >         fast_tests += [['event_eth_tx_adapter_autotest', false]]
> >         fast_tests += [['bitratestats_autotest', true]]
> >         fast_tests += [['latencystats_autotest', true]]
> > -       driver_test_names += 'link_bonding_mode4_autotest'
> >         fast_tests += [['pdump_autotest', true]]
> >  endif
> >
> > --
> > 2.25.1
> >
> 
> Reviewed-by: David Marchand <david.march...@redhat.com>
> 
> Just a note.
> Looking at the makefile counterpart, I can see that if we disable the
> null driver, we would have an issue too.
> 
I'm not actually seeing an error with it in meson builds. Running a quick
test using build parameter "-Ddisable_drivers=net/null" shows no errors, so
I think we may be ok here. 

Regards,
/Bruce

Reply via email to