* [dpdk-dev] [PATCH] net/bonding: remove all slaves on close [not found] <CGME20170406120001eucas1p2a05d5006e760aee92254fe462c6c8bd2@eucas1p2.samsung.com> @ 2017-04-06 11:59 ` Ilya Maximets 2017-04-14 9:06 ` Declan Doherty 0 siblings, 1 reply; 3+ messages in thread From: Ilya Maximets @ 2017-04-06 11:59 UTC (permalink / raw) To: dev, Declan Doherty Cc: Heetae Ahn, Eric Kinzie, Bernard Iremonger, Jan Blunck, Ilya Maximets Some applications like OVS knows nothing about the device type and wants to use same API to work with all of them. But bond_pmd, unlike other pmds, requires additional step (removing of all the slaves) before closing the device. In fact that bond_pmd automatically adds all the devices from kvargs to bonding on configuration it also should remove all of them on close. This change is intended to have the same API for physical and virtual devices. It allows us to handle virtual devices in OVS in a common way. Signed-off-by: Ilya Maximets <i.maximets@samsung.com> --- drivers/net/bonding/rte_eth_bond_pmd.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c index 77d3bee..c398fdb 100644 --- a/drivers/net/bonding/rte_eth_bond_pmd.c +++ b/drivers/net/bonding/rte_eth_bond_pmd.c @@ -1659,7 +1659,22 @@ void bond_ethdev_close(struct rte_eth_dev *dev) { struct bond_dev_private *internals = dev->data->dev_private; + uint8_t bond_port_id = internals->port_id; + int skipped = 0; + RTE_LOG(INFO, EAL, "Closing bonded device %s\n", dev->data->name); + while (internals->slave_count != skipped) { + uint8_t port_id = internals->slaves[skipped].port_id; + + rte_eth_dev_stop(port_id); + + if (rte_eth_bond_slave_remove(bond_port_id, port_id) != 0) { + RTE_LOG(ERR, EAL, + "Failed to remove port %d from bonded device " + "%s\n", port_id, dev->data->name); + skipped++; + } + } bond_ethdev_free_queues(dev); rte_bitmap_reset(internals->vlan_filter_bmp); } -- 2.7.4 ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-dev] [PATCH] net/bonding: remove all slaves on close 2017-04-06 11:59 ` [dpdk-dev] [PATCH] net/bonding: remove all slaves on close Ilya Maximets @ 2017-04-14 9:06 ` Declan Doherty 2017-04-14 9:39 ` Ferruh Yigit 0 siblings, 1 reply; 3+ messages in thread From: Declan Doherty @ 2017-04-14 9:06 UTC (permalink / raw) To: Ilya Maximets, dev; +Cc: Heetae Ahn, Eric Kinzie, Bernard Iremonger, Jan Blunck On 06/04/17 12:59, Ilya Maximets wrote: > Some applications like OVS knows nothing about the > device type and wants to use same API to work with > all of them. But bond_pmd, unlike other pmds, requires > additional step (removing of all the slaves) before > closing the device. > > In fact that bond_pmd automatically adds all the > devices from kvargs to bonding on configuration it > also should remove all of them on close. > > This change is intended to have the same API for physical > and virtual devices. It allows us to handle virtual > devices in OVS in a common way. > > Signed-off-by: Ilya Maximets <i.maximets@samsung.com> > --- ... > Acked-by: Declan Doherty <declan.doherty@intel.com> ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-dev] [PATCH] net/bonding: remove all slaves on close 2017-04-14 9:06 ` Declan Doherty @ 2017-04-14 9:39 ` Ferruh Yigit 0 siblings, 0 replies; 3+ messages in thread From: Ferruh Yigit @ 2017-04-14 9:39 UTC (permalink / raw) To: Declan Doherty, Ilya Maximets, dev Cc: Heetae Ahn, Eric Kinzie, Bernard Iremonger, Jan Blunck On 4/14/2017 10:06 AM, Declan Doherty wrote: > On 06/04/17 12:59, Ilya Maximets wrote: >> Some applications like OVS knows nothing about the >> device type and wants to use same API to work with >> all of them. But bond_pmd, unlike other pmds, requires >> additional step (removing of all the slaves) before >> closing the device. >> >> In fact that bond_pmd automatically adds all the >> devices from kvargs to bonding on configuration it >> also should remove all of them on close. >> >> This change is intended to have the same API for physical >> and virtual devices. It allows us to handle virtual >> devices in OVS in a common way. >> >> Signed-off-by: Ilya Maximets <i.maximets@samsung.com> >> --- > ... >> > > > Acked-by: Declan Doherty <declan.doherty@intel.com> Applied to dpdk-next-net/master, thanks. ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-04-14 9:39 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <CGME20170406120001eucas1p2a05d5006e760aee92254fe462c6c8bd2@eucas1p2.samsung.com> 2017-04-06 11:59 ` [dpdk-dev] [PATCH] net/bonding: remove all slaves on close Ilya Maximets 2017-04-14 9:06 ` Declan Doherty 2017-04-14 9:39 ` Ferruh Yigit
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).