> > > > Running l3fwd in event mode with SW eventdev, service cores
> > > > can start RX before main thread is finished with PMD installation.
> > > > to reproduce:
> > > > ./dpdk-l3fwd --lcores=49,51 -n 6 -a ca:00.0 -s 0x8000000000000 \
> > > > --vdev event_sw0 -- \
> > > > -L -P -p 1  --mode eventdev --eventq-sched=ordered \
> > > > --rule_ipv4=test/l3fwd_lpm_v4_u1.cfg --
> > rule_ipv6=test/l3fwd_lpm_v6_u1.cfg
> > > > \
> > > > --no-numa
> > > >
> > > > At init stage user will most likely see the error message like that:
> > > > ETHDEV: lcore 51 called rx_pkt_burst for not ready port 0
> > > > 0: ./dpdk-l3fwd (rte_dump_stack+0x1f) [15de723]
> > > > ...
> > > > 9: ./dpdk-l3fwd (eal_thread_loop+0x5a2) [15c1324]
> > > > ...
> > > >
> > > > And then all depends how luck/unlucky you are.
> > > > If there are some actual packet in HW RX queue, then the app will most
> > > > likely crash, otherwise it might survive.
> > > > As error message suggests, the problem is that services are started
> > > > before main thread finished with NIC setup and initialization.
> > > > The suggested fix moves services startup after NIC setup phase.
> > > >
> > > > Bugzilla ID: 1390
> > > > Fixes: 8bd537e9c6cf ("examples/l3fwd: add service core setup based on
> > > > caps")
> > > > Cc: sta...@dpdk.org
> > > >
> > > > Signed-off-by: Konstantin Ananyev <konstantin.v.anan...@yandex.ru>
> > > > Signed-off-by: Konstantin Ananyev <konstantin.anan...@huawei.com>
> 
> Acked-by: Pavan Nikhilesh <pbhagavat...@marvell.com>

Applied, thanks.



Reply via email to