From patchwork Thu Nov 23 12:19:16 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shahaf Shuler X-Patchwork-Id: 31561 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DBB0A4C57; Thu, 23 Nov 2017 13:20:05 +0100 (CET) Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30077.outbound.protection.outlook.com [40.107.3.77]) by dpdk.org (Postfix) with ESMTP id 61F162BA7 for ; Thu, 23 Nov 2017 13:20:00 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=8176E5pQ/CXqQYQLSN29myTs12/9ZqUJ8z4ghA59f7o=; b=P2S0YtSRUQqNYlulz7P38uZzTobzsUgYs/iZMtl9r26MeH6IPks1WcwanPnO6mrEBDL9dmFy/22m6xz8p9YBDwV7mYyFD3zcLfSGjU/CXGC5fyFDnu684fxxGkyrNmWg9w5AggOxBhrFKP5wwNRveGBCX1p0MG1LdVUYkMBqf2Y= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=shahafs@mellanox.com; Received: from mellanox.com (82.166.227.17) by DB6PR05MB3142.eurprd05.prod.outlook.com (2603:10a6:6:1a::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.260.4; Thu, 23 Nov 2017 12:19:58 +0000 From: Shahaf Shuler To: dev@dpdk.org Date: Thu, 23 Nov 2017 14:19:16 +0200 Message-Id: <20171123121941.144335-5-shahafs@mellanox.com> X-Mailer: git-send-email 2.12.0 In-Reply-To: <20171123121941.144335-1-shahafs@mellanox.com> References: <20171123121941.144335-1-shahafs@mellanox.com> MIME-Version: 1.0 X-Originating-IP: [82.166.227.17] X-ClientProxiedBy: HE1PR0402CA0044.eurprd04.prod.outlook.com (2603:10a6:7:7c::33) To DB6PR05MB3142.eurprd05.prod.outlook.com (2603:10a6:6:1a::16) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: daaca7cf-7817-4522-c1c0-08d5326c8397 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(48565401081)(5600025)(4604075)(2017052603199); SRVR:DB6PR05MB3142; X-Microsoft-Exchange-Diagnostics: 1; DB6PR05MB3142; 3:RaRWvJtss//ijIeMnVpqGkfxAOhMYBgjmb1xpR/haiQoTm6tDm9044UGTTxD1yu0sfnnWnMvRdKLfXBnGtP8xuqQy40T84CzeWu/h96AHc8oR/0eenQupOdeQI/rx6gnkntOmZ1ISAHkp3MKLT5fOT1+c9KtYiX61GNf+IKyOHwncqhPv/BJE4p6vQp2yEOrMKqTW3x1mqXEHp1lUZ+eKvDeIHLMAPvHzRm91Oitptyt8xK3UmqcUTpLMx7d4Q4q; 25:+voV1aJa11/CGSmPjJX5AgodmM5voQ9AN1WQsnS+lhBaxBDe9r9d6f0XSwc5bSJzm5HKSk+Zzy0F3gCZfkNXSN2IxSDqB7Im6ZmdOIG5sAN2stKAVwwUqyRQcr+goBMEDybiNws2wMUKf6bZLK4XG001gJKEve8RFNuClyfw+bLqmcN7TF+KAXjjIXnLqD03ZBiKPPI0lgfsoFJ424GknX+Fhj6tjdX2/XREnFUq4BNWdLR/8BkHm0P4OSzjiBFhDrJhp0RCmM3CIDHFFi9zOPDk4w6ed3yKE3qw8E7yq/O0+jEgSHLZZJQ4bcYcLsnqsjiFpliwRP44xPMAfzWAa0DaP7337731Jx+m4VjyLIU=; 31:gnNx/fivfXMV+wQ1nsCzezvX++uYVw83uHYEXLQs5wBCtboFB5XaPH34YC14hg7x+SVQkvRLv6LSKYNJopItVWZ+4a7CQiUelYU3qPfKc2uI6OWHuRzeUn/eKrn/g3SEeVrsVlRrhKJyGm3i/IGvRfAhr9PNA/DUPZmaI9utQ6eN66gKGcWCraOBo1N8lgGk4bEgy1f523bpyzmTzCAku2jmQ7UbejRPRKFkwYMC/60= X-MS-TrafficTypeDiagnostic: DB6PR05MB3142: X-Microsoft-Exchange-Diagnostics: 1; DB6PR05MB3142; 20:6f5VoQAHPzT5BWtp/byYTkx7d51+vZ/nGZjmArypljVJJz7ElUh2B0xp5Jg6xbaWCZpM3F/gpPHOGz1I4+B/2yPZEqlem2SEx3WiV1pBowa9/fiXGjpJXTudcCvXpk0AXrbcUfMc7z+q9CEjRgEig44KWJkyCWT1yC9meAr9XF5P41YEPRhZPUnR0Zqzcvjw+SrVPw9pCHItl7UIx1iI9hpyQjrVEtZoWPtGv7HgxVe5vi0+6nD3F/NFnvK4N2fY3HF/+7Pem3BOwmGflQgUygh3/G+oOZ0O1zdXCZqDSg8BuhpR8L1zAqzCJNDqIiGuMQZMgWCqpXiDU2JIxINdevnvAM/7h3ks7MhdEZPiG01ljOd00WBrWWMKDK0H7IKMAEoTVL25V+iVJTJtsdIbwZ1PZLpj4Vq232Xnq1X1GrjvU6EHGX6qm9wPz2TuIaZS1XUO9wTmNL6jMnRz50e02Q6QWOWsKX8vXIgrZv+tnDq5fc0qM5UamjzAMFB6RUkt; 4:Txm4ZIkVCOjGMJd5QcRk2sUtlciRWYadmEyXGj574gM046HJLoW4U4V+iuv/97ysxCRtSWlvtOM8bP1i+1miR0usILBTlfoQGtNUMekgX0iUB86xPH6jjpXcuLgBzWCbucxF6tGLHP84fPjxKlAnxZogt3MlgvKv+QENBzVt2Ad4Q2sssjTzzQRvPbXJtN2/AlW/OLjLd5hpPvco85C4k0IYhn8pBAZu6appmdt8xWvtrH1Ijn5MIgtfRArs6jGKquetnAgwF2tvaSOHCDo7OA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3231022)(3002001)(6055026)(6041248)(20161123562025)(20161123560025)(20161123555025)(20161123564025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DB6PR05MB3142; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DB6PR05MB3142; X-Forefront-PRVS: 05009853EF X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(366004)(346002)(376002)(39860400002)(199003)(189002)(50466002)(16586007)(101416001)(5660300001)(478600001)(6116002)(47776003)(69596002)(6666003)(3846002)(33026002)(97736004)(52116002)(8936002)(36756003)(16526018)(76176999)(55016002)(5003940100001)(50226002)(48376002)(50986999)(33646002)(6916009)(81166006)(53936002)(81156014)(8676002)(21086003)(1076002)(305945005)(68736007)(86362001)(2906002)(189998001)(105586002)(2361001)(25786009)(66066001)(7736002)(106356001)(2950100002)(316002)(2351001); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR05MB3142; H:mellanox.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR05MB3142; 23:FuuW8rw9/z0gh5wGQ0chaN17YXiUk0FBDHruwvbQb?= MVnqrI0DlYcLDsJi/9FY0CCWeJJiMzInp0oEHw5kx+SB/iWFH1vO9QY5Nn4CFyEk9koO4yv7dW4s7i2rRIrq9GrxjLhO8yY9dgBP1rMFoEpVNgumrssSto26Ej0uve/hbJmvKv1ZyM92huBRiFaOeDkqQ0NeJCgOMfepuExt4LxVybA4qmn008dh8F0YAbn951nocUz1YAQF2PO1G8knH5e/DU6Pw2ZDofVNu791UO57/lD4a08WVU4yVBDbBHnE9vZVlcynoU5I5WnT3J7i+iEzgNruHb298nBf/kOkX5+8fNHfhhLCbDag3fLd7pWqSJoWi1pw2PxymDKh4oFGilEn2sdlTi5XWWD7+gx4VA8hjWeDLsM1Baqxz3HpSjowU6AQCfGxnxi0JGJX1CTwNEIXkEUH4I9uraY58WulCqhtiEfyg26948uZLlW1TA3/emFMHfykfv5yf2Dnk/n2m6d++PFb9EyyjisKVzlnkoRZ1oTSKz04Y9oegAZNFObM67CdywAIh6VecY7JGXrecP24713SJXf/3yl9RcKW/aiIZJBDHfws1l2N5G+GkwIkQuw1J6arZpG3w26OZ+s+jnReZMPwLAgxjYVT66kfsmFyggpJC/U78MguuZ24p0Nfuxq4ZWxhlkV5Gn/EOWkh47BBXz17aiQUOl6MDXwvh1c40AJlkTFFf8tly+VqC3GItvES1atTVn2OWWhNr6HAjYx3FEy9fyFNK6fihruEs1ID1gYH838mKv/JYBpfkjMsxpJ8snI/ChLwM2JhOYWI8rShL3a1Hk2JybWSylOczSh6ggs5u7jun5tmhbvZvTjamOairswbldp5lSHDAm2RmiE2OFhGg3wiLF5PFsV9Ovr0SCK49sWiOnCIJqvHYJtgESyJps++ZjO73f8OJLhJ5Yh530Jd00+O1qjC4p5CdpqAjGZJWBOe/IbOKZ7p+0py+YUafmP2BDbj3T9e8hmGX6oNMnptfKpNppVqBkw68bOliSMhgECd2/jjTySFNq8SFNCm10j2izYWwXblknt1PviXRnQCYopGZYf2scJ1UazZBMPc+HX2fBHIQ9EX7SKujc4qPto7MSflGCKH/YHFHfo3aObRbOHTGcArxUCrysh4cWC5bie1pwtTZ9e0TFlYg8= X-Microsoft-Exchange-Diagnostics: 1; DB6PR05MB3142; 6:MIJzhgB+LlEd65d1h+ksOeRwSQ4LwF1/zD4puiOfGWszqBNSFrlzDnYziI89T/78BmS/lMhst+bVMK0rtpZcaooy7cBqR5wJlwH1o8Ik0ehYhEa+j/d8a8VKpej184Pf75DUmXs3jkOM897gDYNay/hmgejuH6QDG3bo/njx5WGnsmZlsImOMN0RfxKX7Y4UnkDZ6PB4Pkz2+1q/vn1uA4uYP7aw67LNFy+A2Bn0xA6j4ysibH9R0mzI/YgAt9+pyP9dUzMhgVzzNNtCc5KA2TCBudbTzi9BJfNAF07pO5yPqEUYxefsq4CqOzeWhYRH91cdhHIMvbq6cu84j+06Vg4nJaBMx9/IxcOQxr6LF9M=; 5:OVh5+JfStsLO+vGgvVFH5ddK9TaUSsO9l0VpEPpdRm2ZOWOQeMJ2MRSE+N5W8duF8Lx4xxm93Aqkr3XBctkacw5DNKPpMAzl1YIo3YKgOKHED//5nQV5DLBwOrKB8fUZzHoYT8jmzZWuRkfYYeD85OdjycU5iLCPNH0GalV9Szo=; 24:lmvjreXGu0ST9iKS6OFLWcYSBiILB1gukcEvz9W4wNzuQwCUgWT347IF1ZVq147dH71HEGjIXgvDQeJEVYCflATUmG5CrpmedRlfRyBe5y8=; 7:Crc6v8aWyML2+Ev+zPnmqm1VyD0xT77CegTehumqWcJkKxfwE2jgUiKQcBOX9NviHSKw3aaArDQ04MnzQf8OluRLbQt3c6Gy3DeX+BXPIW9MoFouyelUUDaV4oPal481mJrMOirqsK+DXJCt/Z5QmxTMmH7LEKTjDN5xtgKLxX3F98AMPR+NjQhl7yArRIwajaV6bH95g7gyU+lsFYSVWAeGn3GcEoCEyKbl2Z8mD4A8UQZyS1MJsQOxZg8OnJpr SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Nov 2017 12:19:58.3723 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: daaca7cf-7817-4522-c1c0-08d5326c8397 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR05MB3142 Subject: [dpdk-dev] [PATCH 14/39] examples/ip_reassembly: convert to new ethdev offloads API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Ethdev offloads API has changed since: commit ce17eddefc20 ("ethdev: introduce Rx queue offloads API") commit cba7f53b717d ("ethdev: introduce Tx queue offloads API") This commit support the new API. Signed-off-by: Shahaf Shuler --- examples/ip_reassembly/main.c | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/examples/ip_reassembly/main.c b/examples/ip_reassembly/main.c index 756f90efb..d899e4c37 100644 --- a/examples/ip_reassembly/main.c +++ b/examples/ip_reassembly/main.c @@ -193,11 +193,10 @@ static struct rte_eth_conf port_conf = { .mq_mode = ETH_MQ_RX_RSS, .max_rx_pkt_len = JUMBO_FRAME_MAX_SIZE, .split_hdr_size = 0, - .header_split = 0, /**< Header Split disabled */ - .hw_ip_checksum = 1, /**< IP checksum offload enabled */ - .hw_vlan_filter = 0, /**< VLAN filtering disabled */ - .jumbo_frame = 1, /**< Jumbo Frame Support disabled */ - .hw_strip_crc = 1, /**< CRC stripped by hardware */ + .ignore_offload_bitfield = 1, + .offloads = (DEV_RX_OFFLOAD_CHECKSUM | + DEV_RX_OFFLOAD_JUMBO_FRAME | + DEV_RX_OFFLOAD_CRC_STRIP), }, .rx_adv_conf = { .rss_conf = { @@ -207,6 +206,8 @@ static struct rte_eth_conf port_conf = { }, .txmode = { .mq_mode = ETH_MQ_TX_NONE, + .offloads = (DEV_TX_OFFLOAD_IPV4_CKSUM | + DEV_TX_OFFLOAD_MULTI_SEGS), }, }; @@ -1052,6 +1053,8 @@ main(int argc, char **argv) /* initialize all ports */ for (portid = 0; portid < nb_ports; portid++) { + struct rte_eth_rxconf rxq_conf; + /* skip ports that are not enabled */ if ((enabled_port_mask & (1 << portid)) == 0) { printf("\nSkipping disabled port %d\n", portid); @@ -1104,6 +1107,22 @@ main(int argc, char **argv) n_tx_queue = nb_lcores; if (n_tx_queue > MAX_TX_QUEUE_PER_PORT) n_tx_queue = MAX_TX_QUEUE_PER_PORT; + if ((dev_info.rx_offload_capa & port_conf.rxmode.offloads) != + port_conf.rxmode.offloads) { + printf("Some Rx offloads are not supported " + "by port %d: requested 0x%lx supported 0x%lx\n", + portid, port_conf.rxmode.offloads, + dev_info.rx_offload_capa); + port_conf.rxmode.offloads &= dev_info.rx_offload_capa; + } + if ((dev_info.tx_offload_capa & port_conf.txmode.offloads) != + port_conf.txmode.offloads) { + printf("Some Tx offloads are not supported " + "by port %d: requested 0x%lx supported 0x%lx\n", + portid, port_conf.txmode.offloads, + dev_info.tx_offload_capa); + port_conf.txmode.offloads &= dev_info.tx_offload_capa; + } ret = rte_eth_dev_configure(portid, 1, (uint16_t)n_tx_queue, &port_conf); if (ret < 0) { @@ -1114,8 +1133,10 @@ main(int argc, char **argv) } /* init one RX queue */ + rxq_conf = dev_info.default_rxconf; + rxq_conf.offloads = port_conf.rxmode.offloads; ret = rte_eth_rx_queue_setup(portid, 0, nb_rxd, - socket, NULL, + socket, &rxq_conf, rxq->pool); if (ret < 0) { printf("\n"); @@ -1140,7 +1161,8 @@ main(int argc, char **argv) fflush(stdout); txconf = &dev_info.default_txconf; - txconf->txq_flags = 0; + txconf->txq_flags = ETH_TXQ_FLAGS_IGNORE; + txconf->offloads = port_conf.txmode.offloads; ret = rte_eth_tx_queue_setup(portid, queueid, nb_txd, socket, txconf);