return ret;
}
+static int
+memif_dev_stop(struct rte_eth_dev *dev)
+{
+ memif_disconnect(dev);
+ return 0;
+}
+
static int
memif_dev_close(struct rte_eth_dev *dev)
{
if (rte_eal_process_type() == RTE_PROC_PRIMARY) {
memif_msg_enq_disconnect(pmd->cc, "Device closed", 0);
- memif_disconnect(dev);
for (i = 0; i < dev->data->nb_rx_queues; i++)
(*dev->dev_ops->rx_queue_release)(dev, i);
(*dev->dev_ops->tx_queue_release)(dev, i);
memif_socket_remove_device(dev);
- } else {
- memif_disconnect(dev);
}
rte_free(dev->process_private);
static const struct eth_dev_ops ops = {
.dev_start = memif_dev_start,
+ .dev_stop = memif_dev_stop,
.dev_close = memif_dev_close,
.dev_infos_get = memif_dev_info,
.dev_configure = memif_dev_configure,