Hi Bernard, This is an old patch, sorry for commenting after this long.
On 6/12/2016 6:11 PM, Bernard Iremonger wrote: > Use rte_spinlock_trylock() in the rx/tx burst functions to > take the queue spinlock. > > Signed-off-by: Bernard Iremonger <bernard.iremonger at intel.com> > Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com> > --- ... > static uint16_t > @@ -143,8 +154,10 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct rte_mbuf > **bufs, > uint8_t i, j, k; > > rte_eth_macaddr_get(internals->port_id, &bond_mac); > - /* Copy slave list to protect against slave up/down changes during tx > - * bursting */ This piece, ... > for (i = 0; i < num_of_slaves; i++) { > - struct port *port = &mode_8023ad_ports[slaves[i]]; > + struct port *port; > + > + port = &mode_8023ad_ports[internals->active_slaves[i]]; And this piece seems needs to be moved into next patch in the patchset. ... And if you will send new version of the patchset, there are a few warnings from check-git-log.sh: Wrong headline prefix: bonding: remove memcpy from burst functions bonding: take queue spinlock in rx/tx burst functions bonding: grab queue spinlocks in slave add and remove bonding: add spinlock to rx and tx queues Wrong headline lowercase: bonding: take queue spinlock in rx/tx burst functions bonding: add spinlock to rx and tx queues Thanks, ferruh