Message ID | 20201014140507.9327-3-elibr@nvidia.com |
---|---|
State | Superseded |
Headers | show |
Series | [ovs-dev,V3,1/2] AUTHORS: Update Eli Britstein <elibr@nvidia.com> | expand |
On 10/14/20 5:05 PM, Eli Britstein wrote: > Following DPDK commit [1], RTE_ETH_DEV_CLOSE_REMOVE flag is obsolete. > Behavior is equivalent to "always on". Remove the usage of that flag. > > [1] 638d40ba9622 ("ethdev: remove old close behaviour") > > Signed-off-by: Eli Britstein <elibr@nvidia.com> Reviewed-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
On 10/14/20 4:05 PM, Eli Britstein wrote: > Following DPDK commit [1], RTE_ETH_DEV_CLOSE_REMOVE flag is obsolete. > Behavior is equivalent to "always on". Remove the usage of that flag. > > [1] 638d40ba9622 ("ethdev: remove old close behaviour") > > Signed-off-by: Eli Britstein <elibr@nvidia.com> > --- This change is for dpdk-latest, right? DPDK patch is not in 19.11. > lib/netdev-dpdk.c | 12 +++--------- > 1 file changed, 3 insertions(+), 9 deletions(-) > > diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c > index c048aaa75..76eec449a 100644 > --- a/lib/netdev-dpdk.c > +++ b/lib/netdev-dpdk.c > @@ -1447,7 +1447,6 @@ netdev_dpdk_destruct(struct netdev *netdev) > struct netdev_dpdk *dev = netdev_dpdk_cast(netdev); > struct rte_device *rte_dev; > struct rte_eth_dev *eth_dev; > - bool remove_on_close; > > ovs_mutex_lock(&dpdk_mutex); > > @@ -1459,20 +1458,15 @@ netdev_dpdk_destruct(struct netdev *netdev) > * FIXME: avoid direct access to DPDK internal array rte_eth_devices. > */ > eth_dev = &rte_eth_devices[dev->port_id]; > - remove_on_close = > - eth_dev->data && > - (eth_dev->data->dev_flags & RTE_ETH_DEV_CLOSE_REMOVE); > rte_dev = eth_dev->device; > > /* Remove the eth device. */ > rte_eth_dev_close(dev->port_id); > > - /* Remove this rte device and all its eth devices if flag > - * RTE_ETH_DEV_CLOSE_REMOVE is not supported (which means representors > - * are not supported), or if all the eth devices belonging to the rte > - * device are closed. > + /* Remove this rte device and all its eth devices if all the eth > + * devices belonging to the rte device are closed. > */ > - if (!remove_on_close || !netdev_dpdk_get_num_ports(rte_dev)) { > + if (!netdev_dpdk_get_num_ports(rte_dev)) { > int ret = rte_dev_remove(rte_dev); > > if (ret < 0) { >
On 10/14/2020 5:25 PM, Ilya Maximets wrote: > External email: Use caution opening links or attachments > > > On 10/14/20 4:05 PM, Eli Britstein wrote: >> Following DPDK commit [1], RTE_ETH_DEV_CLOSE_REMOVE flag is obsolete. >> Behavior is equivalent to "always on". Remove the usage of that flag. >> >> [1] 638d40ba9622 ("ethdev: remove old close behaviour") >> >> Signed-off-by: Eli Britstein <elibr@nvidia.com> >> --- > This change is for dpdk-latest, right? DPDK patch is not in 19.11. Right. Added in v4. Also, dpdk-latest should be rebased. > >> lib/netdev-dpdk.c | 12 +++--------- >> 1 file changed, 3 insertions(+), 9 deletions(-) >> >> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c >> index c048aaa75..76eec449a 100644 >> --- a/lib/netdev-dpdk.c >> +++ b/lib/netdev-dpdk.c >> @@ -1447,7 +1447,6 @@ netdev_dpdk_destruct(struct netdev *netdev) >> struct netdev_dpdk *dev = netdev_dpdk_cast(netdev); >> struct rte_device *rte_dev; >> struct rte_eth_dev *eth_dev; >> - bool remove_on_close; >> >> ovs_mutex_lock(&dpdk_mutex); >> >> @@ -1459,20 +1458,15 @@ netdev_dpdk_destruct(struct netdev *netdev) >> * FIXME: avoid direct access to DPDK internal array rte_eth_devices. >> */ >> eth_dev = &rte_eth_devices[dev->port_id]; >> - remove_on_close = >> - eth_dev->data && >> - (eth_dev->data->dev_flags & RTE_ETH_DEV_CLOSE_REMOVE); >> rte_dev = eth_dev->device; >> >> /* Remove the eth device. */ >> rte_eth_dev_close(dev->port_id); >> >> - /* Remove this rte device and all its eth devices if flag >> - * RTE_ETH_DEV_CLOSE_REMOVE is not supported (which means representors >> - * are not supported), or if all the eth devices belonging to the rte >> - * device are closed. >> + /* Remove this rte device and all its eth devices if all the eth >> + * devices belonging to the rte device are closed. >> */ >> - if (!remove_on_close || !netdev_dpdk_get_num_ports(rte_dev)) { >> + if (!netdev_dpdk_get_num_ports(rte_dev)) { >> int ret = rte_dev_remove(rte_dev); >> >> if (ret < 0) { >>
> On 10/14/2020 5:25 PM, Ilya Maximets wrote: > > External email: Use caution opening links or attachments > > > > > > On 10/14/20 4:05 PM, Eli Britstein wrote: > >> Following DPDK commit [1], RTE_ETH_DEV_CLOSE_REMOVE flag is obsolete. > >> Behavior is equivalent to "always on". Remove the usage of that flag. > >> > >> [1] 638d40ba9622 ("ethdev: remove old close behaviour") > >> > >> Signed-off-by: Eli Britstein <elibr@nvidia.com> > >> --- > > This change is for dpdk-latest, right? DPDK patch is not in 19.11. > Right. Added in v4. Also, dpdk-latest should be rebased. I've rebased and pushed dpdk-latest yesterday, is there a new commit that needs rebasing again? Regards Ian > > > >> lib/netdev-dpdk.c | 12 +++--------- > >> 1 file changed, 3 insertions(+), 9 deletions(-) > >> > >> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c > >> index c048aaa75..76eec449a 100644 > >> --- a/lib/netdev-dpdk.c > >> +++ b/lib/netdev-dpdk.c > >> @@ -1447,7 +1447,6 @@ netdev_dpdk_destruct(struct netdev *netdev) > >> struct netdev_dpdk *dev = netdev_dpdk_cast(netdev); > >> struct rte_device *rte_dev; > >> struct rte_eth_dev *eth_dev; > >> - bool remove_on_close; > >> > >> ovs_mutex_lock(&dpdk_mutex); > >> > >> @@ -1459,20 +1458,15 @@ netdev_dpdk_destruct(struct netdev *netdev) > >> * FIXME: avoid direct access to DPDK internal array rte_eth_devices. > >> */ > >> eth_dev = &rte_eth_devices[dev->port_id]; > >> - remove_on_close = > >> - eth_dev->data && > >> - (eth_dev->data->dev_flags & RTE_ETH_DEV_CLOSE_REMOVE); > >> rte_dev = eth_dev->device; > >> > >> /* Remove the eth device. */ > >> rte_eth_dev_close(dev->port_id); > >> > >> - /* Remove this rte device and all its eth devices if flag > >> - * RTE_ETH_DEV_CLOSE_REMOVE is not supported (which means > representors > >> - * are not supported), or if all the eth devices belonging to the rte > >> - * device are closed. > >> + /* Remove this rte device and all its eth devices if all the eth > >> + * devices belonging to the rte device are closed. > >> */ > >> - if (!remove_on_close || !netdev_dpdk_get_num_ports(rte_dev)) { > >> + if (!netdev_dpdk_get_num_ports(rte_dev)) { > >> int ret = rte_dev_remove(rte_dev); > >> > >> if (ret < 0) { > >>
On 10/14/2020 6:10 PM, Stokes, Ian wrote: > External email: Use caution opening links or attachments > > >> On 10/14/2020 5:25 PM, Ilya Maximets wrote: >>> External email: Use caution opening links or attachments >>> >>> >>> On 10/14/20 4:05 PM, Eli Britstein wrote: >>>> Following DPDK commit [1], RTE_ETH_DEV_CLOSE_REMOVE flag is obsolete. >>>> Behavior is equivalent to "always on". Remove the usage of that flag. >>>> >>>> [1] 638d40ba9622 ("ethdev: remove old close behaviour") >>>> >>>> Signed-off-by: Eli Britstein <elibr@nvidia.com> >>>> --- >>> This change is for dpdk-latest, right? DPDK patch is not in 19.11. >> Right. Added in v4. Also, dpdk-latest should be rebased. > I've rebased and pushed dpdk-latest yesterday, is there a new commit that needs rebasing again? Sorry, I missed that rebase. > > Regards > Ian > >>>> lib/netdev-dpdk.c | 12 +++--------- >>>> 1 file changed, 3 insertions(+), 9 deletions(-) >>>> >>>> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c >>>> index c048aaa75..76eec449a 100644 >>>> --- a/lib/netdev-dpdk.c >>>> +++ b/lib/netdev-dpdk.c >>>> @@ -1447,7 +1447,6 @@ netdev_dpdk_destruct(struct netdev *netdev) >>>> struct netdev_dpdk *dev = netdev_dpdk_cast(netdev); >>>> struct rte_device *rte_dev; >>>> struct rte_eth_dev *eth_dev; >>>> - bool remove_on_close; >>>> >>>> ovs_mutex_lock(&dpdk_mutex); >>>> >>>> @@ -1459,20 +1458,15 @@ netdev_dpdk_destruct(struct netdev *netdev) >>>> * FIXME: avoid direct access to DPDK internal array rte_eth_devices. >>>> */ >>>> eth_dev = &rte_eth_devices[dev->port_id]; >>>> - remove_on_close = >>>> - eth_dev->data && >>>> - (eth_dev->data->dev_flags & RTE_ETH_DEV_CLOSE_REMOVE); >>>> rte_dev = eth_dev->device; >>>> >>>> /* Remove the eth device. */ >>>> rte_eth_dev_close(dev->port_id); >>>> >>>> - /* Remove this rte device and all its eth devices if flag >>>> - * RTE_ETH_DEV_CLOSE_REMOVE is not supported (which means >> representors >>>> - * are not supported), or if all the eth devices belonging to the rte >>>> - * device are closed. >>>> + /* Remove this rte device and all its eth devices if all the eth >>>> + * devices belonging to the rte device are closed. >>>> */ >>>> - if (!remove_on_close || !netdev_dpdk_get_num_ports(rte_dev)) { >>>> + if (!netdev_dpdk_get_num_ports(rte_dev)) { >>>> int ret = rte_dev_remove(rte_dev); >>>> >>>> if (ret < 0) { >>>>
diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index c048aaa75..76eec449a 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -1447,7 +1447,6 @@ netdev_dpdk_destruct(struct netdev *netdev) struct netdev_dpdk *dev = netdev_dpdk_cast(netdev); struct rte_device *rte_dev; struct rte_eth_dev *eth_dev; - bool remove_on_close; ovs_mutex_lock(&dpdk_mutex); @@ -1459,20 +1458,15 @@ netdev_dpdk_destruct(struct netdev *netdev) * FIXME: avoid direct access to DPDK internal array rte_eth_devices. */ eth_dev = &rte_eth_devices[dev->port_id]; - remove_on_close = - eth_dev->data && - (eth_dev->data->dev_flags & RTE_ETH_DEV_CLOSE_REMOVE); rte_dev = eth_dev->device; /* Remove the eth device. */ rte_eth_dev_close(dev->port_id); - /* Remove this rte device and all its eth devices if flag - * RTE_ETH_DEV_CLOSE_REMOVE is not supported (which means representors - * are not supported), or if all the eth devices belonging to the rte - * device are closed. + /* Remove this rte device and all its eth devices if all the eth + * devices belonging to the rte device are closed. */ - if (!remove_on_close || !netdev_dpdk_get_num_ports(rte_dev)) { + if (!netdev_dpdk_get_num_ports(rte_dev)) { int ret = rte_dev_remove(rte_dev); if (ret < 0) {
Following DPDK commit [1], RTE_ETH_DEV_CLOSE_REMOVE flag is obsolete. Behavior is equivalent to "always on". Remove the usage of that flag. [1] 638d40ba9622 ("ethdev: remove old close behaviour") Signed-off-by: Eli Britstein <elibr@nvidia.com> --- lib/netdev-dpdk.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-)