From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0040.outbound.protection.outlook.com [104.47.33.40]) by dpdk.org (Postfix) with ESMTP id A0AC52C66 for ; Fri, 1 Jul 2016 13:17:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=pwE357PcgfGVpYBGpDf2KY/04ZRCxW9Kk78J1zH9hKs=; b=HlZLU+ndGcSlkIFvheuYayZ/wysw/X+5MG7lVdk1F5QGZk3Jj2xSQhZZ5hUU8tqugVef6XISnwswbbvzKyJrgPa3cO0mPdvUS3ZcCqPJ4gzunDNwOGnYbAfDQIsWC944cYKh0kaeYsl3wfOHa8mGO1NZHI/yK5845bGo9+Nfm50= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain.localdomain (122.167.11.22) by BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) with Microsoft SMTP Server (TLS) id 15.1.523.12; Fri, 1 Jul 2016 11:17:47 +0000 From: Jerin Jacob To: CC: , , , , , Jerin Jacob Date: Fri, 1 Jul 2016 16:46:36 +0530 Message-ID: <1467371814-26754-2-git-send-email-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1467371814-26754-1-git-send-email-jerin.jacob@caviumnetworks.com> References: <1467028448-8914-1-git-send-email-jerin.jacob@caviumnetworks.com> <1467371814-26754-1-git-send-email-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [122.167.11.22] X-ClientProxiedBy: PN1PR01CA0027.INDPRD01.PROD.OUTLOOK.COM (10.164.137.34) To BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) X-MS-Office365-Filtering-Correlation-Id: 1f89a212-835e-48fb-1496-08d3a1a15682 X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 2:Cu4I+mN1MFY5JrMNo2mrdEwMI4aC+mJ7bgTzEUeY2xIMKtlafkLBQwyDCMwuQe6ZX2UWUk02hC0OmNNQKdNG73s2n+hVMSyXOl+Eq6SdmyVYaeldQWEmx18n2gTHZ5twgzYCZmq+0PTPM52Yw/J6aIMRaxcAkb4TgREEmQqyHWTtsfSYPXyZMns7BJ2/Dpqx; 3:BJws1FWVu1ZBVzWY7FOVjb+xaa4mMSq1fD5h64hyii69GFciOBScYucTPxI3x3k10H0Mzn+Z2WonfsSLM3i8l0Sl7SstdV2eSmZhM0NzOWhurca/kqXpTChFcSmpo7GJ X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 25:Yum/aCZQ2hkhpF80IEIHrMpjN41RKVd8xI71qYF9VGVuL+RiJt6w9wJlGRkAR97ZuSvGRdxJUuiv+guFYLmawvEJx4gAttA4SXK9V/uLLGgj4FN1VwW3IpdPlted6N/1aRaB1Qj3dSf7iqM1HE+q4QfCJx1wj/5UK+FUNT+cPQDzBoLbqEVYG/wSE5JFhGE0BmO1yeg1xxWEuKc9g5hwjwhbk7XdLSpR46g9jTzSUKuk5CbYjKePZDqZbSmFcpv3A/TZV7uZbCZhI0VnH9HBwdbymJDG2f5+nsvv+GYFB/0AJiDQwoQV/H1URgMmNNLL8HNRMvetrTcGUix95iu+JfXTCoQ+IV9Ib1Y1Q3CLe2+PayHUuqWqQ7NJmxh9f4F5D0Hg+N0AePTQkEK21mWzYaMnTtVPjxZKg+QzZQNwQtkEpnRA7sklKjOcoMp19BjpCROLwnPxeR4RTzM18imoUKS8hBCoPZ6MAC5uNVdISi/HUiqDQEezPfKPBUBwyWDfQU9q9/5J6heZdLMsY55NCX58Uk904rX+VtlsfcqOI0RO7Hbwke9QnxTSlK4SSc67gvJDRFLXJWZDf7DeiSJJMVyFj64t0OHxGVrqZhlnE5hYgteuEavRdRPCn2QrY5GmRs+8NMt3yhxk0bP92BUI2JMqYpagCEEGPIFFt52Cli80m24Mj7tqiq7XWkcS0Y38GsOiN6NkV1pEtv5PX5xksGqw5nrw0gr4FPwsi1fFv8VvAFk6m6V8oQ73cidqTIUGq84HPFOkro7jtNPXxDxXuoygBb8aW8CBLbF/Ma0Y9Cc= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 20:vHv9g/tAcadkfbyM6Xe7X2ioNm3JO5IMEHnN+q7kUuoRlF/jdBOGcVLO/aiK7LlDtd74oYxGmavJuWvSv/Y/FGVe/opTIYC5iTDtdYYoDgvHHpqh0OOYovdJ0CPJrbDXv+NXc55GPF4AOjX3G/FyoyG1biVMMU/4rwVSTVLBmGOVAKlvtY02HkbVf7IKcWrLTw2aDl9ltzddzwyxU/h1D9+dHhMzBqGK2r91vkFkWOs+BRZuu/tv7qzsk1NvCjnQN+3FCl4D1r64FNabrqYca3PYeaGcWfaDo5I9uHL7pxiI++ZGdvW+EqqM+hgBIz/5X5reI8yQQwQy7803wYYoKHx3L2R0kXoaKjr5Nk6UTVYkf6CucEkZczXPAGrQyDV9JlR9cZl5fhiZ/Erob/R3LvQGteRAvjvLtglY6TU7pEjpNdbLmJSchvB3Ib00KQo6eQmcBpKmsC/pqfverV/x2Z9ts9cLR1q/GEIy6y/pEAd61I2LNSOXBo7Cm5V1dNcboQZLuuKUMhW0o0ZoglXI2mpAai1VBYzvnCpNRhoupNp/mXcURhw2GldZ+rod+Ppnj29vfKgk1pIx7cpAnxV1bZn7TDuR5i1jjW9zlCoIPuk= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046); SRVR:BLUPR0701MB1714; BCL:0; PCL:0; RULEID:; SRVR:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 4:h+dnc6xyE0SZXb+fHXvZpF0K8PKnLoIXg/5yP7WD1SRNomACWmS+Yi7epDSy/v3YsrNs70uf2sgCybuN5cFymjwqwy1VFH7Pd/St4UnRrIjVW7xgArv+G/JTujKGPP1/0FnWts+s8hytyThnvTsbGYFUeq3EdWbRx2IEsskk6bRfNiam0k3naDDFiWZaIaseNYuWpaxdoR39sHzXg8NrahhTzKYmk7SGe5bxRnJ+xkSbF6yRHyGKZdNLPeLr/1htX4ppmpam1YsQ71k+qyrEhLL3AJidkuBIIPnsiQevgC9vnwy4FIGoKAhbmV/Q+mDlr0AJOxKZo43nZqgxH9wSgc4pSJQvPOb2F0xjI6HINW63b/tP+Tu6kSNZvoi4Kdj9 X-Forefront-PRVS: 0990C54589 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(6069001)(7916002)(189002)(199003)(68736007)(8676002)(5003940100001)(81166006)(81156014)(66066001)(7846002)(76176999)(50466002)(4001430100002)(50986999)(305945005)(586003)(2906002)(4326007)(92566002)(48376002)(3846002)(6116002)(101416001)(77096005)(2950100001)(36756003)(42186005)(575784001)(107886002)(110136002)(97736004)(19580395003)(189998001)(7736002)(229853001)(33646002)(105586002)(2351001)(19580405001)(106356001)(47776003)(50226002)(7099028); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0701MB1714; H:localhost.localdomain.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB1714; 23:2IszE15sQMZF1BrQZeb14YduV+Da4YU5PnEtsUy?= =?us-ascii?Q?d4OOjTqhjRog/qRQeBv1O56OGeJ5Kd6xtCfk3n2CnTHwN3t4xDDoolQCZzq3?= =?us-ascii?Q?cRWmA06HGXd1zBAuouSJ8koNLXQnHhQCjZqRqC3RXpD7FjpHGhGKAFR17HQd?= =?us-ascii?Q?zfFk3PCozFlj50MESBEdoKDDP45Cj2S3+LBpT6WRMdSg07OHYF/WVWXdoAca?= =?us-ascii?Q?LWpCTosRkhBkJzhSfEXk/rNAiN6SbzQLRtSRRrDSOpU4BuPR4dqOX5brkDV+?= =?us-ascii?Q?lMevDbyPl7E5qwlt9HzAZx9r1EBvRSstStwml3Tlvs0h43B/VIMAQZqg4J72?= =?us-ascii?Q?G4Vhmbe0P8G9B2Cm4tbYEGdByQGb/Chmn/YYY8ELL92zJTV48PRTMZmgbjDq?= =?us-ascii?Q?WRE56Vvpf8hidQcAjEdANJH+iVykmsAYSLc6OzH8ApLYlLmt9h/HB5xO+8Pu?= =?us-ascii?Q?ZyNj4/egOfxFqsb5KS+3GFzzeBF7EzVXSzn/sU9NipmQMVoBSqF2tMo/CD9d?= =?us-ascii?Q?MypxrmVDLspq6r8ejnL+1/hlqtZws1tULmBc7gE3yj1gP+Iiaa4SP1Wax+lz?= =?us-ascii?Q?5kysKq9tzmRLJma1x2bW5pISE5Uq/Y8py52TbXbVqFROsqaNMbEq4Z+PeWAo?= =?us-ascii?Q?9DbRgeigIvy+7LQfNhQuwE2wVpoqHBFbBPHlpuKovjsJC60k0RDQ7zYH/Cki?= =?us-ascii?Q?K60cFLipxmr8k5qKIfc7XYygauqcF3/3BAeg/VzJ6TfO+Xb6DZ0NvbdWccVQ?= =?us-ascii?Q?I2Zik+354O/jUtIdhD2qOgqmC30r1OQ/RwT7ssqZx8PjEBFlnqdUpl/4A6cT?= =?us-ascii?Q?Flvho2xmex9P0ic/0Yh0q3EuihmLV8AuY0iKRSCUpd19xFnoPrVFUY+rYKmu?= =?us-ascii?Q?72sUqRInF65bdNlOwYvACYCxoh6l3ukhhIm9Q/P9tW8HXdj5FzMbOXS3cNH8?= =?us-ascii?Q?gFF4eYUvBtlNQKfWZ0XO5J4KK2N0TxEUzTy3imL9vPtaQWvgQFeWWSq05DgJ?= =?us-ascii?Q?Fi/wHE6vGcYNj6rAY/H+/42cqy7DN4vl7DNLH7WR9Mkvc1L0ivA8ecHRLLZB?= =?us-ascii?Q?SX+x305GEkLBYoOFrWF4sLr1QwfpjuseZ5p24c6b+3IMvK19jBJsOEUf1zSQ?= =?us-ascii?Q?o1MnmnjFvAPJJA5xPqmwlu46l8r52s5C8niO5icxRSyrJunMznaQ23w=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 6:Omlpf3tQJtvFcEwrqpPWuAtzoy19dafmYp3YJX5yt+8ei9K4C7V9S0fc0PGVR5eZTuyeeLijvSu6NKxULJUIGq90XkwMN6NEKFG/GhCkwQhC1cLOPZZ3nT+B1WDzZOGiYpCsHmB1Cxfp0Obw8X3/8rUQKijC3Y0D5RRAhkM1H9fhynRUh8R61g7yh0H/d2ubEveWqb/a6+WcNq/qFEkV/b6qut2klV0LefNOx4uHQVazvUFp+9y6OMNzP7C7AN8t3YPuDyePLqOhbhCcihyd/Y+6lSbgoyRAxfr91wB4yx3pbrO56w4xC3UOmrc4x4Ru; 5:uj/ql+AQGDKcvmUeRUsK0gJF324zTjCvtAU8av+prqMRm88Xy6DRCkNx0Y9zWl4w0earJF1j5Z0f2LcT2LcGPPA17c5/Pm9IdZxw4ehoMpkr6opm91DFI+j43xGtZW08CC9DFAgcI5H/X6JuNzVkKg==; 24:sf4SUQBTFEf5H5Q7qZu88at3CCaHrqhx8zix7uddL5UICu+abeXlGWOPb1gUXUecffJyITcWYhooVlu0LV6KrPAGz+DxLaH70k9z1gdw46A=; 7:N8xWAhxBU/uDp9Q0VaHhZDLjnVPQJvmRcCR9HIxA4BPxvLPDUeJe9FBYVNosLMc3NRkuGnxxWYeScbZH5j2UsKx0KKMOQ+av9k46f4/1qGak+FoaUYFjdCJXM0Ll1M7hZGdpxBQgomryAIx3oXG8GbrsiPBuClVcw5iAnUeCx27RU+vy9/rh5K3Ih6X6MZqO15ZkdjDTqb0DxjbRitHsYvhgWQFkbdbGMv1DpmwMCLMGkRV62avld/6oRfNqV/oks+pvEZ9mxlHwWfKGuSu91A== SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jul 2016 11:17:47.3287 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0701MB1714 Subject: [dpdk-dev] [PATCH v2 1/3] virtio: conditional compilation cleanup X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Jul 2016 11:17:52 -0000 Removed unnecessary compile time dependency on "use_simple_rxtx". Signed-off-by: Jerin Jacob --- drivers/net/virtio/Makefile | 3 --- drivers/net/virtio/virtio_pci.h | 1 + drivers/net/virtio/virtio_rxtx.c | 28 +++++++++------------------- drivers/net/virtio/virtio_rxtx.h | 3 +-- drivers/net/virtio/virtio_rxtx_simple.c | 8 ++++++-- drivers/net/virtio/virtio_user_ethdev.c | 1 + 6 files changed, 18 insertions(+), 26 deletions(-) diff --git a/drivers/net/virtio/Makefile b/drivers/net/virtio/Makefile index 3020b68..b9b0d8d 100644 --- a/drivers/net/virtio/Makefile +++ b/drivers/net/virtio/Makefile @@ -50,10 +50,7 @@ SRCS-$(CONFIG_RTE_LIBRTE_VIRTIO_PMD) += virtqueue.c SRCS-$(CONFIG_RTE_LIBRTE_VIRTIO_PMD) += virtio_pci.c SRCS-$(CONFIG_RTE_LIBRTE_VIRTIO_PMD) += virtio_rxtx.c SRCS-$(CONFIG_RTE_LIBRTE_VIRTIO_PMD) += virtio_ethdev.c - -ifeq ($(findstring RTE_MACHINE_CPUFLAG_SSSE3,$(CFLAGS)),RTE_MACHINE_CPUFLAG_SSSE3) SRCS-$(CONFIG_RTE_LIBRTE_VIRTIO_PMD) += virtio_rxtx_simple.c -endif ifeq ($(CONFIG_RTE_VIRTIO_USER),y) SRCS-$(CONFIG_RTE_LIBRTE_VIRTIO_PMD) += virtio_user/vhost_user.c diff --git a/drivers/net/virtio/virtio_pci.h b/drivers/net/virtio/virtio_pci.h index dd7693f..b8295a7 100644 --- a/drivers/net/virtio/virtio_pci.h +++ b/drivers/net/virtio/virtio_pci.h @@ -253,6 +253,7 @@ struct virtio_hw { uint8_t use_msix; uint8_t started; uint8_t modern; + uint8_t use_simple_rxtx; uint8_t mac_addr[ETHER_ADDR_LEN]; uint32_t notify_off_multiplier; uint8_t *isr; diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c index a27208e..63b53f7 100644 --- a/drivers/net/virtio/virtio_rxtx.c +++ b/drivers/net/virtio/virtio_rxtx.c @@ -67,10 +67,6 @@ #define VIRTIO_SIMPLE_FLAGS ((uint32_t)ETH_TXQ_FLAGS_NOMULTSEGS | \ ETH_TXQ_FLAGS_NOOFFLOADS) -#ifdef RTE_MACHINE_CPUFLAG_SSSE3 -static int use_simple_rxtx; -#endif - static void vq_ring_free_chain(struct virtqueue *vq, uint16_t desc_idx) { @@ -333,6 +329,7 @@ virtio_dev_rxtx_start(struct rte_eth_dev *dev) */ uint16_t i; uint16_t desc_idx; + struct virtio_hw *hw = dev->data->dev_private; PMD_INIT_FUNC_TRACE(); @@ -353,8 +350,7 @@ virtio_dev_rxtx_start(struct rte_eth_dev *dev) nbufs = 0; error = ENOSPC; -#ifdef RTE_MACHINE_CPUFLAG_SSSE3 - if (use_simple_rxtx) { + if (hw->use_simple_rxtx) { for (desc_idx = 0; desc_idx < vq->vq_nentries; desc_idx++) { vq->vq_ring.avail->ring[desc_idx] = desc_idx; @@ -362,7 +358,7 @@ virtio_dev_rxtx_start(struct rte_eth_dev *dev) VRING_DESC_F_WRITE; } } -#endif + memset(&rxvq->fake_mbuf, 0, sizeof(rxvq->fake_mbuf)); for (desc_idx = 0; desc_idx < RTE_PMD_VIRTIO_RX_MAX_BURST; desc_idx++) { @@ -378,12 +374,11 @@ virtio_dev_rxtx_start(struct rte_eth_dev *dev) /****************************************** * Enqueue allocated buffers * *******************************************/ -#ifdef RTE_MACHINE_CPUFLAG_SSSE3 - if (use_simple_rxtx) + if (hw->use_simple_rxtx) error = virtqueue_enqueue_recv_refill_simple(vq, m); else -#endif error = virtqueue_enqueue_recv_refill(vq, m); + if (error) { rte_pktmbuf_free(m); break; @@ -404,8 +399,7 @@ virtio_dev_rxtx_start(struct rte_eth_dev *dev) struct virtqueue *vq = txvq->vq; virtio_dev_vring_start(vq); -#ifdef RTE_MACHINE_CPUFLAG_SSSE3 - if (use_simple_rxtx) { + if (hw->use_simple_rxtx) { uint16_t mid_idx = vq->vq_nentries >> 1; for (desc_idx = 0; desc_idx < mid_idx; desc_idx++) { @@ -426,7 +420,7 @@ virtio_dev_rxtx_start(struct rte_eth_dev *dev) desc_idx++) vq->vq_ring.avail->ring[desc_idx] = desc_idx; } -#endif + VIRTQUEUE_DUMP(vq); } } @@ -456,9 +450,7 @@ virtio_dev_rx_queue_setup(struct rte_eth_dev *dev, dev->data->rx_queues[queue_idx] = rxvq; -#ifdef RTE_MACHINE_CPUFLAG_SSSE3 virtio_rxq_vec_setup(rxvq); -#endif return 0; } @@ -494,9 +486,6 @@ virtio_dev_tx_queue_setup(struct rte_eth_dev *dev, { uint8_t vtpci_queue_idx = 2 * queue_idx + VTNET_SQ_TQ_QUEUE_IDX; -#ifdef RTE_MACHINE_CPUFLAG_SSSE3 - struct virtio_hw *hw = dev->data->dev_private; -#endif struct virtnet_tx *txvq; struct virtqueue *vq; uint16_t tx_free_thresh; @@ -511,13 +500,14 @@ virtio_dev_tx_queue_setup(struct rte_eth_dev *dev, } #ifdef RTE_MACHINE_CPUFLAG_SSSE3 + struct virtio_hw *hw = dev->data->dev_private; /* Use simple rx/tx func if single segment and no offloads */ if ((tx_conf->txq_flags & VIRTIO_SIMPLE_FLAGS) == VIRTIO_SIMPLE_FLAGS && !vtpci_with_feature(hw, VIRTIO_NET_F_MRG_RXBUF)) { PMD_INIT_LOG(INFO, "Using simple rx/tx path"); dev->tx_pkt_burst = virtio_xmit_pkts_simple; dev->rx_pkt_burst = virtio_recv_pkts_vec; - use_simple_rxtx = 1; + hw->use_simple_rxtx = 1; } #endif diff --git a/drivers/net/virtio/virtio_rxtx.h b/drivers/net/virtio/virtio_rxtx.h index 058b56a..28f82d6 100644 --- a/drivers/net/virtio/virtio_rxtx.h +++ b/drivers/net/virtio/virtio_rxtx.h @@ -86,10 +86,9 @@ struct virtnet_ctl { const struct rte_memzone *mz; /**< mem zone to populate RX ring. */ }; -#ifdef RTE_MACHINE_CPUFLAG_SSSE3 int virtio_rxq_vec_setup(struct virtnet_rx *rxvq); int virtqueue_enqueue_recv_refill_simple(struct virtqueue *vq, struct rte_mbuf *m); -#endif + #endif /* _VIRTIO_RXTX_H_ */ diff --git a/drivers/net/virtio/virtio_rxtx_simple.c b/drivers/net/virtio/virtio_rxtx_simple.c index 242ad90..67430da 100644 --- a/drivers/net/virtio/virtio_rxtx_simple.c +++ b/drivers/net/virtio/virtio_rxtx_simple.c @@ -37,8 +37,6 @@ #include #include -#include - #include #include #include @@ -131,6 +129,10 @@ virtio_rxq_rearm_vec(struct virtnet_rx *rxvq) vq_update_avail_idx(vq); } +#ifdef RTE_MACHINE_CPUFLAG_SSSE3 + +#include + /* virtio vPMD receive routine, only accept(nb_pkts >= RTE_VIRTIO_DESC_PER_LOOP) * * This routine is for non-mergeable RX, one desc for each guest buffer. @@ -293,6 +295,8 @@ virtio_recv_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts, return nb_pkts_received; } +#endif + #define VIRTIO_TX_FREE_THRESH 32 #define VIRTIO_TX_MAX_FREE_BUF_SZ 32 #define VIRTIO_TX_FREE_NR 32 diff --git a/drivers/net/virtio/virtio_user_ethdev.c b/drivers/net/virtio/virtio_user_ethdev.c index 5ab2471..bef8130 100644 --- a/drivers/net/virtio/virtio_user_ethdev.c +++ b/drivers/net/virtio/virtio_user_ethdev.c @@ -303,6 +303,7 @@ virtio_user_eth_dev_alloc(const char *name) hw->vtpci_ops = &virtio_user_ops; hw->use_msix = 0; hw->modern = 0; + hw->use_simple_rxtx = 0; hw->virtio_user_dev = dev; data->dev_private = hw; data->numa_node = SOCKET_ID_ANY; -- 2.5.5