* [dpdk-dev] [Bug 278] bond_ethdev_rx_burst multithread access bond's different queue will crash
@ 2019-05-15 6:18 bugzilla
0 siblings, 0 replies; only message in thread
From: bugzilla @ 2019-05-15 6:18 UTC (permalink / raw)
To: dev
https://bugs.dpdk.org/show_bug.cgi?id=278
Bug ID: 278
Summary: bond_ethdev_rx_burst multithread access bond's
different queue will crash
Product: DPDK
Version: 18.11
Hardware: All
OS: All
Status: CONFIRMED
Severity: normal
Priority: Normal
Component: ethdev
Assignee: dev@dpdk.org
Reporter: wavespider@sina.com
Target Milestone: ---
when multi-thread access net-bonding interface's different queue, calling
function
below will result in crash because of "out of array boundary":
rte_eth_rx_burst
-> bond_ethdev_rx_burst
one thread loop over and update internals->active_slave:
if (++internals->active_slave >= slave_count)
internals->active_slave = 0;
another thread just read internals->active_slave, maybe equal slave_count:
active_slave = internals->active_slave;
num_rx_slave =
rte_eth_rx_burst(internals->active_slaves[active_slave], /*Here out of
boundary*/
bd_rx_q->queue_id,
bufs + num_rx_total, nb_pkts);
default, internals->active_slaves[active_slave] maybe the value is 0, then call
rte_eth_rx_burst function:
port-id == 0 and queue_id = 20 (example):
when port-id == 0's interface have not enough queue-number(<20), then will
result in crash ( dev->data->rx_queues[queue_id] == NULL pointer access ).
--
You are receiving this mail because:
You are the assignee for the bug.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2019-05-15 6:18 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-15 6:18 [dpdk-dev] [Bug 278] bond_ethdev_rx_burst multithread access bond's different queue will crash bugzilla
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.