From patchwork Mon Jun 27 11:54:05 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob X-Patchwork-Id: 14411 X-Patchwork-Delegate: yuanhan.liu@linux.intel.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 7C57C2C46; Mon, 27 Jun 2016 13:54:57 +0200 (CEST) Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1on0099.outbound.protection.outlook.com [157.56.110.99]) by dpdk.org (Postfix) with ESMTP id CE9A82C46 for ; Mon, 27 Jun 2016 13:54:55 +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=LpzjnELkPy19UwCBZCVzlzxMm3tRJO7XWbkpTD38R1c=; b=fDHG8PfPVUEHewT7aMYU+QRxDbab4i+iNuR+h4AnSh3dPc4WuwUPXWeqqTeairZhpvXTR4I/Jeux9LCK718ySft58CQ2aOZ1J0OTuwTTJfLtZl0PPYulToTEZrFzS2gbByFBs0nejmEIHhqiazITNYNbSNVxZrwndFpysTm9Pb4= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain.localdomain (171.48.12.117) by BN3PR0701MB1720.namprd07.prod.outlook.com (10.163.39.19) with Microsoft SMTP Server (TLS) id 15.1.528.16; Mon, 27 Jun 2016 11:54:50 +0000 From: Jerin Jacob To: CC: , , , , , Jerin Jacob Date: Mon, 27 Jun 2016 17:24:05 +0530 Message-ID: <1467028448-8914-2-git-send-email-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1467028448-8914-1-git-send-email-jerin.jacob@caviumnetworks.com> References: <1467028448-8914-1-git-send-email-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [171.48.12.117] X-ClientProxiedBy: MA1PR01CA0014.INDPRD01.PROD.OUTLOOK.COM (10.164.117.21) To BN3PR0701MB1720.namprd07.prod.outlook.com (10.163.39.19) X-MS-Office365-Filtering-Correlation-Id: cca8637e-0657-4b06-81a4-08d39e81d9f4 X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1720; 2:g7d+Stymkp7C52d1l/LJXlc6VtTIsfH7FdJaMQC+4aOKerbIx/Ni3fscf669Dk8KHga+605OUYIYCH+/HN+rGBuJID6InHQVpcT9VTAK4OCI0uKiI482az5akiAoGgWK3hb4cBP3DlqlJ3FGYVk2HUdHx4gJm1Sr0aPkM5TmGCM8oDnHVbGUYEEe/wQtp7i6; 3:3Ek1Zi/On5eherDwfcvtk0JwjsjOIwhv8hVgszoHrKc8OKm45TFP7tg/rAMDBi4IJE4htGfGJktBQiMet1JnnYd6WxvBoZ4/CKJ4EBat3ojotOp1pzcTI7ACLdmbSv+P X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0701MB1720; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1720; 25:Ed2PoBlSy7uIN62WZ/EIh9XwkIEkYrlCk7RPNQ6DG8TOfrotry2CSZg6o5Cje/DjreRyA9v9DR2s2Dezxkp3XUglyB9RW3hgAQqbwOatImZopcjxsUFDPYS3du2Vntx4dInYJLu/4P1TEqexFPGOwucHNiNqMZtnWoaJGEwcddLjD+OYsemdz5ywYVXz2eePC85RqXZLyMh2x0NiwEbXGLXjIFjsqFlTPQgI8C/5aQ1+n7iJg8fnqdG+uAQH3r/68YkdvFGq+iTgeSY34/+fjW3VkYQQX7XFOKDRPbQxFnlQSNyqn1b2FskjTx+QXa8OZ7P0hOyYKHOftGGl0dyL2iCUGVPopwbAhYnI7ZB9n1zbePjydBPBM0v+gsl7kx4D78ee2s+HkxpZISITvjzbCwat8K0mJ6M033SPfjN5R7rkPnN0x7G3Pr+fethBsq6dw5oZZ9q8FPzYgQWRN+vcxeIl+G/tl8Uu0cjhwLLaQ5akE1JN538uIkT0gZmYQDBZ8/PpQcS0zeVmUIl5AasPqM919QXzSEVFeRGYUnTZvvMImSNXExKoR4uj3GTv2pmpCtdheTb92Qkf2NZv3Ry5FAkaY9g59kxfapfwZZIZGT2msSXsQuDgTD/lbAe4mUW5dl9EZVggZRhIkcWeSZHAUkI0XONOEJwwQUCVZ4YZRGMtfkYaSS83NXdHyAn6HVbzysPr4vvfGA6SkRKRfQI+mlI4EjnB+jNei1B4NtCCzVDZcIBjrD+FZdcuKL7W94aKHuKuaOPc/D9KduNXTccIyQ== X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1720; 31:sxzbd5+ICjrlnnR2owSUq8ypw3Epx5NMFU6F3uUAls2MmMjNJYVdHU48AoGDZZU3nQqsQJOVPjRYvnmeYbierPZfn31APi6uuAj24qemj+uRQDRPP5NZH51nWyWuMOWGXC0wHwm2Ltz8PhxnXwj/utzUBg5VM/ytvwPdus+jEC48oj7XA3Ero7t6nhEiK8Lc7XgGw8UJ/GzLJuVLxM0OuA==; 20:rM5OfyRNjCLRh70WajRtDPf3QU8MXDnBr2QCP60IEHFwiKVvj44BBde50Rjugzg4RXInbJkvILNh3U1K/b4FYICHULD0N7BMKory8YjYIbzwD3oZYOLB0mLa4OD4XDjDGGKHpsqNjj1ntr6VfKWyVayTSVStGtBgP9jbq7n3XBmP/xCdQ2Jdp4JBM8G2JAj3j+NMPFFf8suErEnlu7zFkM3LEb9GnlTgH19QFnD7mWcVY5GEcSMKpAqx3+LaHNwc5LOcvMYvwaJYdZchM809xCBFiJQitlbSbXBGoWJ3zVTHkcZDvy0Dnl35JYs9p7IjQaXyqVkjTbIE84U8PL7Y6syjjKGxSGtYBXcHLEK/WQy3hcpD/pmuMd2yYJUOLFq8+Pw8VGxCmU59GVlqE9vuE/SioWWAyoIcvF5kmD3PtEDYynw77Bq9FaNmLICPOr6fvpJpJs3O2SkFpEaF0+Qlao3KH4eHQ3gs5nVBz3XDgWnjfiaGTBIF6PODhPX0gTNZMsyTJlfL1NcriVVC6FhSTdshH1hh3jpZQz+lnXDxQg1w1fJ/uOibwE/luxi1TzrypMDfByKQvNWg9f6z3TDJqinWDky3tixdEKQ1ivJemao= 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:BN3PR0701MB1720; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0701MB1720; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1720; 4:/uJOkecHoRop/4/vvz0EoE0MEBFjm6AWTLTH/7xChNzNLp6ITlzwZV/PjZGSFoi1QWJsMAOUE0699wfF8jtdWETDg9f4t2QRRImnqtR1R3f+WfZQbac85jOVq46IVuUUCduiBZGueOLRhROievxz9WImXka1d7WirJQMVEoeuRSO7+4ZYs4AFihezyCqBv4YtT5/B0ec50sgTDLKHHJC4b5dXbgZNxmF0LBnxXWmYfMFaQMHwHukq22Erxo6r0EropgxxP0N4fmTfMj4TUzCIOsQ3i/qi2gLcHuBkImyV++hG02tnc0aDNmUT1b88LNMC+nfLgXVOvQnfKDn6WPpekkaaqWeenmhthq3sQxXJAVfPuLUvYk3Wh/Pse8BKrHN X-Forefront-PRVS: 09860C2161 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(189002)(199003)(50226002)(4001430100002)(97736004)(105586002)(50466002)(50986999)(76176999)(586003)(3846002)(48376002)(42186005)(106356001)(101416001)(107886002)(5003940100001)(110136002)(2950100001)(19580395003)(19580405001)(305945005)(77096005)(36756003)(92566002)(2906002)(81166006)(47776003)(68736007)(4326007)(7846002)(66066001)(229853001)(8676002)(2351001)(33646002)(6116002)(81156014)(7736002)(189998001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0701MB1720; 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; BN3PR0701MB1720; 23:wS5YcVITnnlgL6OmUgJ9DZ4erwFoAr27HXBsUSq?= =?us-ascii?Q?4MKlXhmYjnr0lc5AndHjuSn/MkrkSPa5WI5QMOs5WMH3p2wpgm1t3gloD6FX?= =?us-ascii?Q?zy9J3X+25YE+z5hEjnYn3MgZr40oUkCEg1QNi92LlgaKkPtnqNdhirQ89nYB?= =?us-ascii?Q?EKs9QcHfCuQO5/WFdW5GQsSurWP22ZsKddzkeNKGvz0zrxPtKmp9EfK6+N9N?= =?us-ascii?Q?BJ6A43e0INOXrHXjEZdqMA2eaLWUWwZzyRx/ydxGvZrfqnlezKp55LT8bo0Y?= =?us-ascii?Q?DL3liJmDjce3LxCKwlpyxP+goncGrLh+DGxUs+iSkyBuum4pLJEU++VQ44Va?= =?us-ascii?Q?Sk/9o8IYv2Tlp4Cyoe6vCA0kuQU70UlgoDLWauGu2IMjlc5WDSNhgF8qqpYM?= =?us-ascii?Q?XtYMyCfJZ9n4rAr6XWUsGeB0X8PH2lG1gUOqVo26Ay2aSFk/FNTNNEoYeu9C?= =?us-ascii?Q?okmzLRBSxOZJ/8PHVVyaAN/HimiZMdokc7eSiHJagvMztZ5e/EZs4ou6/q2u?= =?us-ascii?Q?ZerEFSbPbBSPoDsPJZfM2duYyk4MxOynilxLDCZLf3ZPKT4pGFOwbPxMlVES?= =?us-ascii?Q?bIAC6B1+o+LbwuwKFkZBgjGee5k2dj2dmdBgKl7td9qTHXrdhpyLRcpUJqsT?= =?us-ascii?Q?6dUMDZ45doptbwUoG8NzDZ5HCl2iwYpnAxg0ZCVuQnd7zc5mTt+Wc0Qkceoe?= =?us-ascii?Q?HOh6hcyj3kEA87vxmbAqgguOVR0Bu8hsiUsqHyrUgHw/PafW8yyyVvGGzjuj?= =?us-ascii?Q?ENlQkebXxVLhd8SFwQr4I5KbrDOTV8Ijvx+lgFi2fmo/PLPCaJe5uUbJ0Nrl?= =?us-ascii?Q?fdy/O1erz7IZ+eo4de8ry6Jw5wPv9qBKdhFHbls9sF0Rsd5NapISJvw5qBgy?= =?us-ascii?Q?noet7PXPhX+XRi9Vz3X5CFfQn9xhHv8HMcw6HCSJTqG9NwysfcM3agKNqAX1?= =?us-ascii?Q?IZq63svDAsKdFDRov1mHFoQ0uUADwbbD2D0nzOEP2VxY0yXn3M1eXUWcvu7d?= =?us-ascii?Q?yYua1t/1Dsw1SWV/ltgcDpdNUIKwPyitZibwq0Wlk4J9326N7mKQX7ru3sv0?= =?us-ascii?Q?s5AfiSs3OwjbzFQuz7FyUXVEaUcDFwCR+Js7t4R/ZQUhmW+YhUnHqWVDnMoL?= =?us-ascii?Q?qAnsOB1TEehg=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1720; 6:YykN5uI2K+h3su5M3kh4gvLZO8CDLIgR27IkdNTNUFW8dkfOHIpY0sMus2coGW9z1Q3XcJobbTtICtEvNcop/pySkdciqYPLVo7TmEh5gNSFOC1NLqPIUNBVpa50dhTFAU0oaikTYTnsZwbR80vkzKgjYIU880+yTkqdCsG3RMXidgeAfueiP63jzVZ6EdXJpJNNzes7Hd4/8PWKCUWgAIYSlaMS6m7OiK3/XKwan2UE1THgwD11p8dneou06SU6472ipMIQlHZJz3FiDg0rZk3KA5Nih8Ne3rMUGrB3Tok=; 5:jhV84xfeHIOr8nPX9kR0Dbn+PMZJRBYTuJicGlDHyt4YQwrvpxtQGsAqG/+azgGJVC8bgIVB7DTo2pBRYQuL9NRpzaIlf2yAZI2m/mm36DJe4dNUuGiGz4LSodLp1dJv6Wk0nJmIuRbDWiLFRD9oug==; 24:zDTo1PQ7HW8CvGVNxdCI6sW8dVeN0DHxXw4qls/Kb7vE3JTjqxjh5+NoR+M1l7SJx0TXOjaXlDryI4CFYO4KFUF6KnivNnWe/wfaHjnhlP0=; 7:WIBw7TM7pZSwEml8JX0n7GNmu9c+rs+fwHyHLpSDe4JkrIU4WqunNq5V3H4j/MCJK3QeBFEvJxFk0ZWFik7yj3lE8OSfSrkyT5fZVtYxPfm76dYlYnJKUbNeejc1nOFAlWvhHHFl5NMIMMuQvWZ1vUlnZ0tza7Q875Y1NDkANL6hgG0mNzxjo/Bm2IUMGSTMvKTa76gsYsUF0+sYnOy/pSan7WmEbrzyQhhqJw9uCoJDQaFBQ1ZTUvxdC+XI/4zg SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2016 11:54:50.8410 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0701MB1720 Subject: [dpdk-dev] [PATCH 1/4] virtio: Fix compile time dependency of use_simple_rxtx usage 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 43de46c..114d40e 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 9216182..ce6ce91 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;