On 9/13/2020 11:07 PM, Thomas Monjalon wrote:
The flag RTE_ETH_DEV_CLOSE_REMOVE is set so all port resources
can be freed by rte_eth_dev_close().

Signed-off-by: Thomas Monjalon <tho...@monjalon.net>
---
  drivers/net/null/rte_eth_null.c | 24 ++++++++++++++++--------
  1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/drivers/net/null/rte_eth_null.c b/drivers/net/null/rte_eth_null.c
index 0ce073fa4b..33997013e4 100644
--- a/drivers/net/null/rte_eth_null.c
+++ b/drivers/net/null/rte_eth_null.c
@@ -458,7 +458,20 @@ eth_mac_address_set(__rte_unused struct rte_eth_dev *dev,
        return 0;
  }
+static int
+eth_dev_close(struct rte_eth_dev *dev)
+{
+       PMD_LOG(INFO, "Closing null ethdev on NUMA socket %u",
+                       rte_socket_id());
+
+       /* mac_addrs must not be freed alone because part of dev_private */
+       dev->data->mac_addrs = NULL;
+
+       return 0;
+}

should check 'RTE_PROC_PRIMARY' in 'eth_dev_close()'?

Reply via email to