On Tue, May 31, 2022 at 6:32 PM Min Hu (Connor) wrote: > > From: Min Hu > > Secondary process need to close dev to release process private resources. > But secondary process should not be obliged to wait for device stop before > closing ethdev. > > This patch fixed it. > > Fixes: febc855b358e ("ethdev: forbid closing started device") > Cc: stable@dpdk.org > > Signed-off-by: Min Hu > --- > v2: > * fixed comment. > --- > lib/ethdev/rte_ethdev.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c > index 09abee6345..f34c6580a4 100644 > --- a/lib/ethdev/rte_ethdev.c > +++ b/lib/ethdev/rte_ethdev.c > @@ -1574,7 +1574,8 @@ rte_eth_dev_close(uint16_t port_id) > RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV); > dev = &rte_eth_devices[port_id]; > > - if (dev->data->dev_started) { It will be good to add the comment as a part of the code as well. That way someone in future won't have to look at the commit log to understand the behavior. > + if (rte_eal_process_type() == RTE_PROC_PRIMARY && > + dev->data->dev_started) { > RTE_ETHDEV_LOG(ERR, "Cannot close started device (port %u)\n", > port_id); > return -EINVAL; > -- > 2.33.0 >