get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/16992/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 16992,
    "url": "https://patches.dpdk.org/api/patches/16992/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1478785884-29273-2-git-send-email-david.marchand@6wind.com/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<1478785884-29273-2-git-send-email-david.marchand@6wind.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1478785884-29273-2-git-send-email-david.marchand@6wind.com",
    "date": "2016-11-10T13:51:24",
    "name": "[dpdk-dev,2/2] net: align ethdev and eal driver names",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "625a7dcfa23b7ed179f4b15b282d0262bfb681df",
    "submitter": {
        "id": 3,
        "url": "https://patches.dpdk.org/api/people/3/?format=api",
        "name": "David Marchand",
        "email": "david.marchand@6wind.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1478785884-29273-2-git-send-email-david.marchand@6wind.com/mbox/",
    "series": [],
    "comments": "https://patches.dpdk.org/api/patches/16992/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/16992/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [IPv6:::1])\n\tby dpdk.org (Postfix) with ESMTP id AFEF96A95;\n\tThu, 10 Nov 2016 14:51:51 +0100 (CET)",
            "from mail-wm0-f48.google.com (mail-wm0-f48.google.com\n\t[74.125.82.48]) by dpdk.org (Postfix) with ESMTP id 0FCC82C74\n\tfor <dev@dpdk.org>; Thu, 10 Nov 2016 14:51:38 +0100 (CET)",
            "by mail-wm0-f48.google.com with SMTP id f82so32810149wmf.1\n\tfor <dev@dpdk.org>; Thu, 10 Nov 2016 05:51:38 -0800 (PST)",
            "from gloops.dev.6wind.com (89.156.119.78.rev.sfr.net.\n\t[78.119.156.89]) by smtp.gmail.com with ESMTPSA id\n\ti132sm13067312wmf.14.2016.11.10.05.51.36\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);\n\tThu, 10 Nov 2016 05:51:37 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=6wind-com.20150623.gappssmtp.com; s=20150623;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references;\n\tbh=MwuyXVNg9EbiEzR996laq6lBmvB6NWGM+qa303tZlgs=;\n\tb=hanO+2+lVrYg3WFeZHjt3UwITy1auZKTcrYoewgvnRQgMDjio88o3gt3iEVGgBOTr3\n\too09ggy5C1vKncqpllu0tY0/ZbqeQHKFExgaggMtvxztyOB0VIOp0Wzlnp3lP0DYpHef\n\t0IYuesHEMBZZxEGeLrW0qtiqOfGbCN6I3gb3C2y9ax7NMjBDb462MmfVqLXOkmYdLHh9\n\tyfHReuNnvOBN9I6NJjL+S6LggvaizXmfLLiUFwWDYvg9TxTsCNGHctVh8AY3QZC0ApG1\n\tPkG1QzlZJ2S2WbMpRJcvnHMD3gvu6cBcYY69Y4q/De+eA58FWGWwUweHfSUrkYW6QW77\n\txgBw==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references;\n\tbh=MwuyXVNg9EbiEzR996laq6lBmvB6NWGM+qa303tZlgs=;\n\tb=Jxgn7+voabb/W1tuUHjG3IF573W5/3ArCgzxrocfiJGaMbTOdFwUbxpadxDd5HZwze\n\tz1FAYlNmRrtqO8O0r5w8WKLA3dKJqhn1HLIZw4ogBkuX1KcOebDGBh5H7i9dAaZboBC7\n\tCq5wuy4UCuEzcRPTVi+e2Pc5pEmQDofoOSvDGZ3k8TdMFjQKriGKT+3IYsTVEi8mLCob\n\t+c0Iowa/pehYGOZILMrGZAeN2yRyPW6vx2rpljvv7HxiNpXYL1QSc2AM3w9nFW7rqjqg\n\tLeHjKTLin2vXV+E6vfWdT6bRpldfkLahSGz0NlMu0gvo1dgeVoD4PHHOCIaWvTWq/3a1\n\tUUDg==",
        "X-Gm-Message-State": "ABUngvcBjC6Y6SKP9UdKxpoPJKqW7EIXuv4fe9U4A+JGMNpiuQScDXYCUsRbI9uJQnpF77PA",
        "X-Received": "by 10.194.122.65 with SMTP id lq1mr4482575wjb.12.1478785897697; \n\tThu, 10 Nov 2016 05:51:37 -0800 (PST)",
        "From": "David Marchand <david.marchand@6wind.com>",
        "To": "thomas.monjalon@6wind.com",
        "Cc": "dev@dpdk.org, linville@tuxdriver.com, declan.doherty@intel.com,\n\tzlu@ezchip.com, lsun@ezchip.com, alejandro.lucero@netronome.com,\n\tmtetsuyah@gmail.com, nicolas.pernas.maradei@emutex.com,\n\tferruh.yigit@intel.com, harish.patil@qlogic.com, rasesh.mody@qlogic.com, \n\tsony.chacko@qlogic.com, bruce.richardson@intel.com,\n\thuawei.xie@intel.com, \n\tyuanhan.liu@linux.intel.com, jianfeng.tan@intel.com",
        "Date": "Thu, 10 Nov 2016 14:51:24 +0100",
        "Message-Id": "<1478785884-29273-2-git-send-email-david.marchand@6wind.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1478785884-29273-1-git-send-email-david.marchand@6wind.com>",
        "References": "<1478785884-29273-1-git-send-email-david.marchand@6wind.com>",
        "Subject": "[dpdk-dev] [PATCH 2/2] net: align ethdev and eal driver names",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Some virtual pmds report a different name than the vdev driver name\nregistered in eal.\nWhile it does not hurt, let's try to be consistent.\n\nSigned-off-by: David Marchand <david.marchand@6wind.com>\n---\n drivers/net/af_packet/rte_eth_af_packet.c  |  4 +++-\n drivers/net/bonding/rte_eth_bond_api.c     |  7 +++----\n drivers/net/bonding/rte_eth_bond_pmd.c     |  4 ++--\n drivers/net/bonding/rte_eth_bond_private.h |  2 +-\n drivers/net/mpipe/mpipe_tilegx.c           | 21 ++++++++++++++++-----\n drivers/net/null/rte_eth_null.c            |  4 +++-\n drivers/net/pcap/rte_eth_pcap.c            |  4 +++-\n drivers/net/ring/rte_eth_ring.c            |  4 +++-\n drivers/net/vhost/rte_eth_vhost.c          |  4 +++-\n drivers/net/virtio/virtio_ethdev.c         |  6 +++++-\n drivers/net/virtio/virtio_ethdev.h         |  2 ++\n drivers/net/virtio/virtio_user_ethdev.c    |  2 +-\n drivers/net/xenvirt/rte_eth_xenvirt.c      |  3 ++-\n 13 files changed, 47 insertions(+), 20 deletions(-)",
    "diff": "diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c\nindex a66a657..8cae165 100644\n--- a/drivers/net/af_packet/rte_eth_af_packet.c\n+++ b/drivers/net/af_packet/rte_eth_af_packet.c\n@@ -437,6 +437,8 @@ open_packet_iface(const char *key __rte_unused,\n \treturn 0;\n }\n \n+static struct rte_vdev_driver pmd_af_packet_drv;\n+\n static int\n rte_pmd_init_internals(const char *name,\n                        const int sockfd,\n@@ -690,7 +692,7 @@ rte_pmd_init_internals(const char *name,\n \t(*eth_dev)->dev_ops = &ops;\n \t(*eth_dev)->driver = NULL;\n \t(*eth_dev)->data->dev_flags = RTE_ETH_DEV_DETACHABLE;\n-\t(*eth_dev)->data->drv_name = \"AF_PACKET PMD\";\n+\t(*eth_dev)->data->drv_name = pmd_af_packet_drv.driver.name;\n \t(*eth_dev)->data->kdrv = RTE_KDRV_NONE;\n \t(*eth_dev)->data->numa_node = numa_node;\n \ndiff --git a/drivers/net/bonding/rte_eth_bond_api.c b/drivers/net/bonding/rte_eth_bond_api.c\nindex 2a3893a..a4e86ae 100644\n--- a/drivers/net/bonding/rte_eth_bond_api.c\n+++ b/drivers/net/bonding/rte_eth_bond_api.c\n@@ -37,6 +37,7 @@\n #include <rte_malloc.h>\n #include <rte_ethdev.h>\n #include <rte_tcp.h>\n+#include <rte_vdev.h>\n \n #include \"rte_eth_bond.h\"\n #include \"rte_eth_bond_private.h\"\n@@ -44,8 +45,6 @@\n \n #define DEFAULT_POLLING_INTERVAL_10_MS (10)\n \n-const char pmd_bond_driver_name[] = \"rte_bond_pmd\";\n-\n int\n check_for_bonded_ethdev(const struct rte_eth_dev *eth_dev)\n {\n@@ -54,7 +53,7 @@ check_for_bonded_ethdev(const struct rte_eth_dev *eth_dev)\n \t\treturn -1;\n \n \t/* return 0 if driver name matches */\n-\treturn eth_dev->data->drv_name != pmd_bond_driver_name;\n+\treturn eth_dev->data->drv_name != pmd_bond_drv.driver.name;\n }\n \n int\n@@ -221,7 +220,7 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id)\n \t\tRTE_ETH_DEV_DETACHABLE;\n \teth_dev->driver = NULL;\n \teth_dev->data->kdrv = RTE_KDRV_NONE;\n-\teth_dev->data->drv_name = pmd_bond_driver_name;\n+\teth_dev->data->drv_name = pmd_bond_drv.driver.name;\n \teth_dev->data->numa_node =  socket_id;\n \n \trte_spinlock_init(&internals->lock);\ndiff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c\nindex a80b6fa..9bfd9f6 100644\n--- a/drivers/net/bonding/rte_eth_bond_pmd.c\n+++ b/drivers/net/bonding/rte_eth_bond_pmd.c\n@@ -2566,12 +2566,12 @@ bond_ethdev_configure(struct rte_eth_dev *dev)\n \treturn 0;\n }\n \n-static struct rte_vdev_driver bond_drv = {\n+struct rte_vdev_driver pmd_bond_drv = {\n \t.probe = bond_probe,\n \t.remove = bond_remove,\n };\n \n-RTE_PMD_REGISTER_VDEV(net_bonding, bond_drv);\n+RTE_PMD_REGISTER_VDEV(net_bonding, pmd_bond_drv);\n RTE_PMD_REGISTER_ALIAS(net_bonding, eth_bond);\n \n RTE_PMD_REGISTER_PARAM_STRING(net_bonding,\ndiff --git a/drivers/net/bonding/rte_eth_bond_private.h b/drivers/net/bonding/rte_eth_bond_private.h\nindex d95d440..5a411e2 100644\n--- a/drivers/net/bonding/rte_eth_bond_private.h\n+++ b/drivers/net/bonding/rte_eth_bond_private.h\n@@ -63,7 +63,7 @@\n \n extern const char *pmd_bond_init_valid_arguments[];\n \n-extern const char pmd_bond_driver_name[];\n+extern struct rte_vdev_driver pmd_bond_drv;\n \n /** Port Queue Mapping Structure */\n struct bond_rx_queue {\ndiff --git a/drivers/net/mpipe/mpipe_tilegx.c b/drivers/net/mpipe/mpipe_tilegx.c\nindex fbbbb00..f0ba91e 100644\n--- a/drivers/net/mpipe/mpipe_tilegx.c\n+++ b/drivers/net/mpipe/mpipe_tilegx.c\n@@ -87,7 +87,6 @@ struct mpipe_local {\n static __thread struct mpipe_local mpipe_local;\n static struct mpipe_context mpipe_contexts[GXIO_MPIPE_INSTANCE_MAX];\n static int mpipe_instances;\n-static const char *drivername = \"MPIPE PMD\";\n \n /* Per queue statistics. */\n struct mpipe_queue_stats {\n@@ -1549,7 +1548,7 @@ mpipe_link_mac(const char *ifname, uint8_t *mac)\n }\n \n static int\n-rte_pmd_mpipe_probe(const char *ifname,\n+rte_pmd_mpipe_probe_common(struct rte_vdev_driver *drv, const char *ifname,\n \t\t      const char *params __rte_unused)\n {\n \tgxio_mpipe_context_t *context;\n@@ -1606,7 +1605,7 @@ rte_pmd_mpipe_probe(const char *ifname,\n \teth_dev->data->dev_flags = 0;\n \teth_dev->data->kdrv = RTE_KDRV_NONE;\n \teth_dev->driver = NULL;\n-\teth_dev->data->drv_name = drivername;\n+\teth_dev->data->drv_name = drv->driver.name;\n \teth_dev->data->numa_node = instance;\n \n \teth_dev->dev_ops      = &mpipe_dev_ops;\n@@ -1623,12 +1622,24 @@ rte_pmd_mpipe_probe(const char *ifname,\n \treturn 0;\n }\n \n+static int\n+rte_pmd_mpipe_xgbe_probe(const char *ifname, const char *params __rte_unused)\n+{\n+\treturn rte_pmd_mpipe_probe_common(&pmd_mpipe_xgbe_drv, ifname, params);\n+}\n+\n+static int\n+rte_pmd_mpipe_gbe_probe(const char *ifname, const char *params __rte_unused)\n+{\n+\treturn rte_pmd_mpipe_probe_common(&pmd_mpipe_gbe_drv, ifname, params);\n+}\n+\n static struct rte_vdev_driver pmd_mpipe_xgbe_drv = {\n-\t.probe = rte_pmd_mpipe_probe,\n+\t.probe = rte_pmd_mpipe_xgbe_probe,\n };\n \n static struct rte_vdev_driver pmd_mpipe_gbe_drv = {\n-\t.probe = rte_pmd_mpipe_probe,\n+\t.probe = rte_pmd_mpipe_gbe_probe,\n };\n \n RTE_PMD_REGISTER_VDEV(net_mpipe_xgbe, pmd_mpipe_xgbe_drv);\ndiff --git a/drivers/net/null/rte_eth_null.c b/drivers/net/null/rte_eth_null.c\nindex 09d77fd..e4fd68f 100644\n--- a/drivers/net/null/rte_eth_null.c\n+++ b/drivers/net/null/rte_eth_null.c\n@@ -478,6 +478,8 @@ static const struct eth_dev_ops ops = {\n \t.rss_hash_conf_get = eth_rss_hash_conf_get\n };\n \n+static struct rte_vdev_driver pmd_null_drv;\n+\n int\n eth_dev_null_create(const char *name,\n \t\tconst unsigned numa_node,\n@@ -553,7 +555,7 @@ eth_dev_null_create(const char *name,\n \teth_dev->driver = NULL;\n \tdata->dev_flags = RTE_ETH_DEV_DETACHABLE;\n \tdata->kdrv = RTE_KDRV_NONE;\n-\tdata->drv_name = \"Null PMD\";\n+\tdata->drv_name = pmd_null_drv.driver.name;\n \tdata->numa_node = numa_node;\n \n \t/* finally assign rx and tx ops */\ndiff --git a/drivers/net/pcap/rte_eth_pcap.c b/drivers/net/pcap/rte_eth_pcap.c\nindex 8b4fba7..58c326a 100644\n--- a/drivers/net/pcap/rte_eth_pcap.c\n+++ b/drivers/net/pcap/rte_eth_pcap.c\n@@ -788,6 +788,8 @@ open_tx_iface(const char *key, const char *value, void *extra_args)\n \treturn 0;\n }\n \n+static struct rte_vdev_driver pmd_pcap_drv;\n+\n static int\n pmd_init_internals(const char *name, const unsigned int nb_rx_queues,\n \t\tconst unsigned int nb_tx_queues,\n@@ -840,7 +842,7 @@ pmd_init_internals(const char *name, const unsigned int nb_rx_queues,\n \t(*eth_dev)->driver = NULL;\n \tdata->dev_flags = RTE_ETH_DEV_DETACHABLE;\n \tdata->kdrv = RTE_KDRV_NONE;\n-\tdata->drv_name = \"Pcap PMD\";\n+\tdata->drv_name = pmd_pcap_drv.driver.name;\n \tdata->numa_node = numa_node;\n \n \treturn 0;\ndiff --git a/drivers/net/ring/rte_eth_ring.c b/drivers/net/ring/rte_eth_ring.c\nindex 56afaf2..31034cf 100644\n--- a/drivers/net/ring/rte_eth_ring.c\n+++ b/drivers/net/ring/rte_eth_ring.c\n@@ -257,6 +257,8 @@ static const struct eth_dev_ops ops = {\n \t.mac_addr_add = eth_mac_addr_add,\n };\n \n+static struct rte_vdev_driver pmd_ring_drv;\n+\n static int\n do_eth_dev_ring_create(const char *name,\n \t\tstruct rte_ring * const rx_queues[], const unsigned nb_rx_queues,\n@@ -341,7 +343,7 @@ do_eth_dev_ring_create(const char *name,\n \teth_dev->dev_ops = &ops;\n \tdata->dev_flags = RTE_ETH_DEV_DETACHABLE;\n \tdata->kdrv = RTE_KDRV_NONE;\n-\tdata->drv_name = \"Rings PMD\";\n+\tdata->drv_name = pmd_ring_drv.driver.name;\n \tdata->numa_node = numa_node;\n \n \tTAILQ_INIT(&(eth_dev->link_intr_cbs));\ndiff --git a/drivers/net/vhost/rte_eth_vhost.c b/drivers/net/vhost/rte_eth_vhost.c\nindex 96bf391..059a74f 100644\n--- a/drivers/net/vhost/rte_eth_vhost.c\n+++ b/drivers/net/vhost/rte_eth_vhost.c\n@@ -984,6 +984,8 @@ static const struct eth_dev_ops ops = {\n \t.xstats_get_names = vhost_dev_xstats_get_names,\n };\n \n+static struct rte_vdev_driver pmd_vhost_drv;\n+\n static int\n eth_dev_vhost_create(const char *name, char *iface_name, int16_t queues,\n \t\t     const unsigned numa_node, uint64_t flags)\n@@ -1071,7 +1073,7 @@ eth_dev_vhost_create(const char *name, char *iface_name, int16_t queues,\n \tdata->dev_flags =\n \t\tRTE_ETH_DEV_DETACHABLE | RTE_ETH_DEV_INTR_LSC;\n \tdata->kdrv = RTE_KDRV_NONE;\n-\tdata->drv_name = internal->dev_name;\n+\tdata->drv_name = pmd_vhost_drv.driver.name;\n \tdata->numa_node = numa_node;\n \n \t/* finally assign rx and tx ops */\ndiff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c\nindex 741688e..dbc4ddb 100644\n--- a/drivers/net/virtio/virtio_ethdev.c\n+++ b/drivers/net/virtio/virtio_ethdev.c\n@@ -52,6 +52,7 @@\n #include <rte_memory.h>\n #include <rte_eal.h>\n #include <rte_dev.h>\n+#include <rte_vdev.h>\n \n #include \"virtio_ethdev.h\"\n #include \"virtio_pci.h\"\n@@ -1210,7 +1211,10 @@ virtio_init_device(struct rte_eth_dev *eth_dev, uint64_t req_features)\n \telse\n \t\teth_dev->data->dev_flags |= RTE_ETH_DEV_INTR_LSC;\n \n-\trte_eth_copy_pci_info(eth_dev, pci_dev);\n+\tif (pci_dev)\n+\t\trte_eth_copy_pci_info(eth_dev, pci_dev);\n+\telse\n+\t\teth_dev->data->drv_name = virtio_user_driver.driver.name;\n \n \trx_func_get(eth_dev);\n \ndiff --git a/drivers/net/virtio/virtio_ethdev.h b/drivers/net/virtio/virtio_ethdev.h\nindex 27d9a19..94b4f43 100644\n--- a/drivers/net/virtio/virtio_ethdev.h\n+++ b/drivers/net/virtio/virtio_ethdev.h\n@@ -104,4 +104,6 @@ uint16_t virtio_xmit_pkts_simple(void *tx_queue, struct rte_mbuf **tx_pkts,\n \n int eth_virtio_dev_init(struct rte_eth_dev *eth_dev);\n \n+extern struct rte_vdev_driver virtio_user_driver;\n+\n #endif /* _VIRTIO_ETHDEV_H_ */\ndiff --git a/drivers/net/virtio/virtio_user_ethdev.c b/drivers/net/virtio/virtio_user_ethdev.c\nindex 406beea..d3b595b 100644\n--- a/drivers/net/virtio/virtio_user_ethdev.c\n+++ b/drivers/net/virtio/virtio_user_ethdev.c\n@@ -473,7 +473,7 @@ virtio_user_pmd_remove(const char *name)\n \treturn 0;\n }\n \n-static struct rte_vdev_driver virtio_user_driver = {\n+struct rte_vdev_driver virtio_user_driver = {\n \t.probe = virtio_user_pmd_probe,\n \t.remove = virtio_user_pmd_remove,\n };\ndiff --git a/drivers/net/xenvirt/rte_eth_xenvirt.c b/drivers/net/xenvirt/rte_eth_xenvirt.c\nindex f74d72c..8321a0b 100644\n--- a/drivers/net/xenvirt/rte_eth_xenvirt.c\n+++ b/drivers/net/xenvirt/rte_eth_xenvirt.c\n@@ -617,6 +617,7 @@ enum dev_action {\n \tDEV_ATTACH\n };\n \n+static struct rte_vdev_driver pmd_xenvirt_drv;\n \n static int\n eth_dev_xenvirt_create(const char *name, const char *params,\n@@ -672,7 +673,7 @@ eth_dev_xenvirt_create(const char *name, const char *params,\n \n \teth_dev->data->dev_flags = RTE_PCI_DRV_DETACHABLE;\n \teth_dev->data->kdrv = RTE_KDRV_NONE;\n-\teth_dev->data->drv_name = \"xen virtio PMD\";\n+\teth_dev->data->drv_name = pmd_xenvirt_drv.driver.name;\n \teth_dev->driver = NULL;\n \teth_dev->data->numa_node = numa_node;\n \n",
    "prefixes": [
        "dpdk-dev",
        "2/2"
    ]
}