Message ID | 1493810472-668-4-git-send-email-hemant.agrawal@nxp.com (mailing list archive) |
---|---|
State | RFC, archived |
Delegated to: | Ferruh Yigit |
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]) by dpdk.org (Postfix) with ESMTP id 1740F7C9C; Wed, 3 May 2017 13:21:40 +0200 (CEST) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0072.outbound.protection.outlook.com [104.47.32.72]) by dpdk.org (Postfix) with ESMTP id B83FA68CA for <dev@dpdk.org>; Wed, 3 May 2017 13:21:34 +0200 (CEST) Received: from BY2PR03CA072.namprd03.prod.outlook.com (10.141.249.45) by BN1PR03MB170.namprd03.prod.outlook.com (10.255.200.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1061.12; Wed, 3 May 2017 11:21:33 +0000 Received: from BY2FFO11FD044.protection.gbl (2a01:111:f400:7c0c::137) by BY2PR03CA072.outlook.office365.com (2a01:111:e400:2c5d::45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1061.12 via Frontend Transport; Wed, 3 May 2017 11:21:32 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11FD044.mail.protection.outlook.com (10.1.14.229) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1047.9 via Frontend Transport; Wed, 3 May 2017 11:21:32 +0000 Received: from bf-netperf1.ap.freescale.net (bf-netperf1.ap.freescale.net [10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v43BLPtk008454; Wed, 3 May 2017 04:21:30 -0700 From: Hemant Agrawal <hemant.agrawal@nxp.com> To: <ferruh.yigit@intel.com> CC: <dev@dpdk.org> Date: Wed, 3 May 2017 16:51:11 +0530 Message-ID: <1493810472-668-4-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1493810472-668-1-git-send-email-hemant.agrawal@nxp.com> References: <1493810472-668-1-git-send-email-hemant.agrawal@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131382840924263959; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39450400003)(39860400002)(39840400002)(39380400002)(39850400002)(39410400002)(39400400002)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(9170700003)(189998001)(356003)(8676002)(5660300001)(105606002)(47776003)(4326008)(8936002)(2906002)(50226002)(5003940100001)(81166006)(498600001)(2950100002)(48376002)(76176999)(50466002)(86362001)(305945005)(33646002)(6916009)(77096006)(106466001)(38730400002)(2351001)(110136004)(85426001)(104016004)(53936002)(6666003)(50986999)(36756003)(217873001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR03MB170; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; A:1; MX:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD044; 1:UvAOP3Z2c7Y7EyiZbAmMyhwmJb3Law5s858/qReJIW0pXGLDBKjewkCgPdSiUvtmlSdQ/MpG5JP0D2RhdGXkcbx1OCFrEOSzx+g8PoEebDuMaCRdruVM7Ax0sdtkAWtn1AbwZzCEBMD5SRXhbXqpQxZy0cjyNTxc568mfMXHPhYWvKXu8/QyiOxjXu8q6CFueTt4CFnnFc17o6UmGcH7Z/sWbmPBwWOJeOyIi1OZkWYNfn/nyvyEgt2MBLqPGRYREURn50LzbQSGUPWTMYxMy7adF6BH/dI8aeYit1xGSZBF7Pf8czP5eQt1FVc5Uzk5J2ywGdAz1cg0pzJ3KM6F4fyfp6lJcPNGlvkUUnza3jG9/izin5x4jTYJBsYP5lWQY7MAgOKaXrExQcH/qYKyxLUXQVvHCElCxuuk22BIJjgpF/Rsbawfs+qmnUwy861ifTQqrXVjknMHkpPj1Y4Tm6WJJTAMrP5b/l1TsEV0p8c9BPFFC/kBfs/aYoMPoiHzNtUB7dOA7hODu9koJP6epSq9QqDNPok+GqWzxT4mHsNwwWQWmxUN0BSZjEv9G33VXJWWW45kvsDLNbF87xv6fND+plsT60+hOuCxkKHGdo32cAZJqZV32OLhVSNoke+HcgQOSxf0IgWXep5HGs70tzzmjNXm2fMiEX3K567MGZs= MIME-Version: 1.0 Content-Type: text/plain X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 18510d24-a2ab-4a39-e9ae-08d492168d40 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:BN1PR03MB170; X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB170; 3:cl4yWAdKY8SGneFXI489TAoATURepedBO+WI70G1pG8puw0s2+5CX69Hf9eO+4os8mAkv/Pk+fSCcAIPR5z5j7Ub8EYTGJ6xEGXTA5+qH9c0mvuc+avTzBR9YqyyoYhSXsY15ZIbifhPnhQSKokTUQk4id47BbKO5to7HObt1I6iMp8j3KlN/bbmO6sctKiV8OrlhCW1de8aCEpSEQ37Q80vCq8BxsZyaq3+OZ588c/PXtUTpKOVUKmT+zkztWqsK9winuMp9YTeGLk3D8eaf4ZtJC6CV+AHCxyVZxm6bLgXEF7K8Hx7WD85QEuCsrPhrsGLII5UuH9gG/1apqyFH9a0B1BruY+T1MtI+RC1kPUka9D88OpmBcJ0iMZQFBZO2s87JqroEqOYuE/i8p/hAnk3inXD0hLv/9Q4CJ8Pt1y/ynxg+w7MiLp40xYEWvBa; 25:zdHnOqZXs2ovqdVjo5LZqSuCYTQiIx3SqBhn/FCBYGcmwh96taIzOfuwi8Hxu2ao/u4yiTt8Dw7Rg0ei2+8pG9Xk3wjkRwpVWEqcml7CjOI6vl2njKyV+lsFLgEwqCEOjslP2GKXpUPKnxmW8/kry2HaNHy7//ag67L6eNNkmTpyXBc0UP7JASCLGjCrNFVG/O8cN7qO1k3GXjJ3RtxEV/El9KjmSqQ46ARdfy97mnKT+rqQJmH5RBlw1Q0VrJ08K8UTkTnxn0M+q4DnpO8vei6BcLvxc2FydboWStTnFsysKFBBrzVFfUvN7pweoqE6hk3V6j6yDEjS7JSghaXq4WLytgh1HKB4sVZWf4+2wTlyJlQp57FW+3uLkPhb2ruklJhb4o9HgBzmnXGIe2UY5g8hzN9YJT6gy9trZl/B+J8aFO8Pwv9EVlTabatq+bkxrcDLEoSiAy9Fpn8/hn9Cyw== X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB170; 31:VUejLpmG9mkHZye4O3bwj70wUwnyNXJ5OEoz2N7+HWybMqvXnFj8EZ8LLZgwMgtqhbil+JIDXiXh4SsGob1iXuDRKpheS3wB5vV9VzuRGbSAyCxlMgMQAncFAnaQPbuxgeyAVPqCZ7+M8T10FRMD9Th5m4feWB+vwk9p8FcaTycoVocS9M83AAweRGIGZw5mSjh/kl27iHXO9uG3x+wQcnnQrR2KOXawP7gRWxuYkKRwli5ULxXm+7V3XiasYad8BWbIGs6x02svnjeWspwrzPYR/qlrADnO5/eJ3ylwhKM= X-Microsoft-Antispam-PRVS: <BN1PR03MB170E23D367F94DA5AFD08EC89160@BN1PR03MB170.namprd03.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(601004)(2401047)(13017025)(13015025)(5005006)(8121501046)(13023025)(13024025)(13018025)(10201501046)(3002001)(93006095)(93001095)(6055026)(6096035)(20161123563025)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123565025)(20161123559100)(20161123556025)(20161123561025); SRVR:BN1PR03MB170; BCL:0; PCL:0; RULEID:(400006); SRVR:BN1PR03MB170; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR03MB170; 4:U0LObx5uESa+fb/ZwZBPl1PGyukHTfJdEM2KaQQ/BY6?= dBjq6vcNjeotJiRP1agnpM9Q1Z+S86vEOdxt4UK0guUhgHkWBLN8vf9Fule01jU6aLcR4E4CQX6u9PdASVvIOyWaMaqvLmYfnXMXd0PgyxlpxJzFnkfY6dzArhP+jwsbll6BoSzJHRABJ5cEnEbQrq852P04cumsYQUr1PduGHJ4osYbCfzl5tmk6VcCX2ZT17MKSOhnTVzg7M9QOr8KJAOmbbg3o+mKHurU/7PyQqkHyqGbewVrmPeTQrJz+iw2J2Jwii9dMurwRf8UVPXQIVLIgWMqIHOy3VoZ9cOIKFtzZJamCzqheaeaLFBSTXoxRUROX+5MlbtsjoII8YkakvHbEIi2dzIbQPUnrY6k21AF0r3Z0F2wVsgK1l+j7IwFNg++qisWgZL7HZnkRHl9XKDIb9I9Aqrf9Qw9gu1NvDjH9wQNH2QjiuOYNNjSuuFUoqXhdPG7DBD86u3oQx3XOzBEnF3sH61S7JhYDDNICtIfc/R4e6EB/ml0MPVFoN9GJGYRrXH7L8Tn80BWbHxi/8ASoeuFQXwOMZfsxkPvK3/H7MdGekKWyfgrqFy+0mEb0h4F/gqaZizaTPqKURukXPcTsa8slCyBJ/cNmnP0X529BRQvCvBZM7At5HAjWD7R4ibF8L7C1vf0UUYKjg95yj4USNuol6mdX8lZb/ecjgJWSg9cBgjlCzsm4BzFX1DtVB3JncPVgFWp+KFX4LjcQ9/XuoCC5gvBihEuFcxrkvL1c2qPKLbKKyeOyMk5S4ClRZbXSyuYJJn/rnT72NDz+TFqCJV1pJP5ECfmWYg7s2WxI/kCxhHbZqjXWScWwibw3PcdbYkAmj49c7rpi7DMBNfH4JfU5Ir3kFAuTJKLf15nWF5mgpsmOz6TnZS9yFxfR8PEusq2gn9euuOZfOuGAUaSBx9ioAB+gl4YzInyF6A== X-Forefront-PRVS: 029651C7A1 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR03MB170; 23:G50yI5+fmLE0oCp5IPRy3CtaCr5so8I7IcPb9iVfaU?= dcDmsAYIPBhh5Z0RIz3OLB+9NpTw/nBAtfosnBA7UAexXK7mE0AQafMWjKm/1ffzOed5ntFGYpejKZf3++nc3M2/7Vl6I7IYbIHTvJi4jUubfe9SS6ru+ZK/2Jje7krmZWNPvBu/UD/H+ELSX47oJ0JQQr+jHhzrV/jnbnsvsZFOpZ0LGgsL1hsm6qRweYqZmjIvm+CQQ7CpW66v5nkRyFx5/loOyBA3p/7Kgj+Dj+zoT0dszcGDtJIg3ahHcjrOZJ+ZAj4a9C1hS6afc50+ZUhGnlys/bYfmTfmUT5o7tgB06LhHZ6558nPSUe1uzcW33QBKP52bSNVVXqE7IINzV+IzBMUcCgCX0IlUhhetL9p7HCsAjfLa8jIcoHRNhU27JlRRkp0Mdb2hOSKx+AUAbSPgRz7CYwhNnX3P6U4+66oYwqRyCvXQTFJT5TKXroUerltWLanx/NS0dt+f9/AyCb/UOz5AHq3w/FhsE83H9EBmeCzarosKqd2AS13RF24bTym9ClnRHUNJzHZA1mrZClqONzUAT32B93HiPE8oj6dcUPXYd/i2sfNmxbqzy+XDGuludnH0M59ev7py0hNUJtyd6KlQGzaH0ko4wrHWjJdcWV8BfzE+2LuUdlz3YDqTECYso39UO062fSEqxJMcl+bPqsu35Vi1aNNyLqbhUhZgsNo3DPm1UFTE0nh1bpiC+uUoqU0B+sIRtpqdfs4KPh9iT83HyOmfGi3DJMDzBH1Y5suMp2qTQcCGd3ma5QLQDEKWOjXhdqzUJQdOFeXJqT38zSfY7cqA6bU3t8V36w+rIBqZUhpannziUU9CrygfgmcZ0rCYnKlqcEZQ8t0Y9LwHeRrIa4Pr3oZnKsmiTRbp9tIaC9DG5DcmIFlxqla25naEKxfFC2rgNR0mGt5qPdSk15ZeQwCHrfeuLoOw2FbB/3u8k1ac+w1KmRk3KXs6njBxDD47R1pWktNoAGMgwdYI1+EWrCXIzBxIme7+VAWkRzQNVps/KQx5zEfAUuyQ3+W+nztZlnGAAzTXuX4LXBb83t4kO/oMEitQNNuagQbRdqBjoZQp7inMeLB9ZGDLoQuAmaxbAPDvfe/kaEUpMUxp1BPFPlsVVaBe3u+FXXxEVsPqOkWiJzefHWfIss5QHsMSVKfonHAKEKNbc6tvCsvH66Wv6I5bc1NMb+fxz2A== X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB170; 6:USsEja9iSp1u+miCx9UI7opkCOE64+wHuPB2zjfom3PTSSeIgefU6hXe4HNVV8z8WHbnEZkWJsqX9Xw0HXo//BGH+jgwmiE22pT/A5Sv36MBZV44iLCE/f/2YC0fg862UKNamQR6q/sydG37C634d2BJ9Z0HxRg6P22uioUXzCmGD9ltuwr8mNS/WDPX7xdJuDxT9AfwRJMavO155CGYoeaeDgVc5xGQ1ns85ISyWlZIY8i2Lg2DOXXRvcE10ziyuvV+1k1eZ7SB6eTU7YWCZP/wpaPI1Ve15M4k9KF8UMqa7fUwcCcXiooML/MsyxM3DlI8QfhOOanrDlkvqOgmBOmKBVBYMquYkAp7lEAS8XviXh2F6CB7d0thTwA5Jg1MjRH8uWwvLqHQ8J37UuDOqqI76NJIftPTe3+V9ybowSXGa4rpQDpN6E/n+otDZs/ayI6xb6bztjbmd6wI2/NAB2kg/wjO3TOfgI7M88pVlPXAfOsnbW2SvZUWiNbqXXocngW3pmNgzO1EgVCN4V45AQ==; 5:FqNbNOi3zyQ7po858GOkcQ09dXfefRVdIyDF52kOoCWZ84CPh01gZi010Jyc56nIFjsYc1grQbCljJ6T8N0oxqPL5NH/T4PyCYWWc/iw4gREKHg359cCWfHCDPSZpsIgBPTotTTvdSPcCWW6tastwkqyNYSm6VU+i5+cokTIIRmWZRoVVyUV8lyZ6qpAOObD; 24:UzoNdOtnf4ZyiZcgHHC0YutcVIC/fUU2ddnl2g+IdR82Q5OF27f/WHOTkKk5G1UOToffSsRVF/92ZN5cosYs29ZWpvjLdlhCljZqmq9Ro9Q= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB170; 7:+UNOCzyhXvIPUrsuGtChtzNJlkItpqae9oWqi8GH84dmDtTvQuwRM7V9XzEhTVOpq8Vd/WhdjCU0oe1EJ5Tu4YP3N8nRZXaxP8qFXR1aBha0NsPkHZCOHxZMdupPGobf1nzXgbegefgfA8Uuy4ao9SWT8Pe23Fxdhr+64rjVBNEe7jfmpp2g9Gm9jpu5Os8o6Dpa3RdOmJRuXG/xZyhBXpxhPUGPk4TeSa7gEU5SrDi2gMC5NkPc+H4ov2teliH/T8Y/nzrS45zafx1gkvWdAuiq97RXybgdPevjVzyvOcr7zN4gdy0jFY6DQS1z9ZctAJC6ZpSUy0Dyx2VorgqhVQ== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 May 2017 11:21:32.1143 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1PR03MB170 Subject: [dpdk-dev] [RFC PATCH 4/5] kni: add support to get gso_size info X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <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>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Checks
Context | Check | Description |
---|---|---|
ci/checkpatch | warning | coding style issues |
ci/Intel-compilation | success | Compilation OK |
Commit Message
Hemant Agrawal
May 3, 2017, 11:21 a.m. UTC
Inform userspace about gso size info
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
---
lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h | 3 ++-
lib/librte_eal/linuxapp/kni/kni_net.c | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
Comments
I guess this is just need this for tso offload. isn't it? Just asking because I have done some work adding gather and tso offload to kni and I was wondering if this is duplicated job from my part. If you are wondering what KNI offload means, since it is not talking to any hw, the offload is regarding the PMD where KNI is sending packet to. So if that PMD supports hw offloads, KNI netdev can advertise that to the linux network stack. On Wed, May 3, 2017 at 12:21 PM, Hemant Agrawal <hemant.agrawal@nxp.com> wrote: > Inform userspace about gso size info > > Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com> > --- > lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h | 3 ++- > lib/librte_eal/linuxapp/kni/kni_net.c | 1 + > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h > b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h > index 2cd7d9a..91ebed3 100644 > --- a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h > +++ b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h > @@ -125,7 +125,8 @@ struct rte_kni_mbuf { > uint16_t nb_segs; /**< Number of segments. */ > char pad4[2]; > uint64_t ol_flags; /**< Offload features. */ > - char pad2[4]; > + uint16_t gso_size; /**< TCP Segmentation Offload Information. > */ > + char pad2[2]; > uint32_t pkt_len; /**< Total pkt len: sum of all segment > data_len. */ > uint16_t data_len; /**< Amount of data in segment buffer. */ > > diff --git a/lib/librte_eal/linuxapp/kni/kni_net.c > b/lib/librte_eal/linuxapp/kni/kni_net.c > index e4a3296..c7648d3 100644 > --- a/lib/librte_eal/linuxapp/kni/kni_net.c > +++ b/lib/librte_eal/linuxapp/kni/kni_net.c > @@ -252,6 +252,7 @@ > } > pkt_kva->pkt_len = len; > pkt_kva->data_len = len; > + pkt_kva->gso_size = skb_shinfo(skb)->gso_size; /* passes > gso_size from Kernel to GPP */ > > /* enqueue mbuf into tx_q */ > ret = kni_fifo_put(kni->tx_q, &pkt_va, 1); > -- > 1.9.1 > >
On 5/3/2017 12:21 PM, Hemant Agrawal wrote: > Inform userspace about gso size info > > Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com> > --- > lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h | 3 ++- > lib/librte_eal/linuxapp/kni/kni_net.c | 1 + > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h > index 2cd7d9a..91ebed3 100644 > --- a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h > +++ b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h > @@ -125,7 +125,8 @@ struct rte_kni_mbuf { > uint16_t nb_segs; /**< Number of segments. */ > char pad4[2]; > uint64_t ol_flags; /**< Offload features. */ > - char pad2[4]; > + uint16_t gso_size; /**< TCP Segmentation Offload Information. */ > + char pad2[2]; rte_kni_mbuf and rte_mbuf should be binary compatible. This is packet_type field of the mbuf struct. When DPDK application receives the mbuf, how it will know if this gso_size or packet_type, unless it knows underlying port is KNI. Is it possible to use udata64 field for this? Who will use information and how it will be used, can you please provide some sort of sample? Thanks, ferruh > uint32_t pkt_len; /**< Total pkt len: sum of all segment data_len. */ > uint16_t data_len; /**< Amount of data in segment buffer. */ > > diff --git a/lib/librte_eal/linuxapp/kni/kni_net.c b/lib/librte_eal/linuxapp/kni/kni_net.c > index e4a3296..c7648d3 100644 > --- a/lib/librte_eal/linuxapp/kni/kni_net.c > +++ b/lib/librte_eal/linuxapp/kni/kni_net.c > @@ -252,6 +252,7 @@ > } > pkt_kva->pkt_len = len; > pkt_kva->data_len = len; > + pkt_kva->gso_size = skb_shinfo(skb)->gso_size; /* passes gso_size from Kernel to GPP */ > > /* enqueue mbuf into tx_q */ > ret = kni_fifo_put(kni->tx_q, &pkt_va, 1); >
diff --git a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h index 2cd7d9a..91ebed3 100644 --- a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h +++ b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h @@ -125,7 +125,8 @@ struct rte_kni_mbuf { uint16_t nb_segs; /**< Number of segments. */ char pad4[2]; uint64_t ol_flags; /**< Offload features. */ - char pad2[4]; + uint16_t gso_size; /**< TCP Segmentation Offload Information. */ + char pad2[2]; uint32_t pkt_len; /**< Total pkt len: sum of all segment data_len. */ uint16_t data_len; /**< Amount of data in segment buffer. */ diff --git a/lib/librte_eal/linuxapp/kni/kni_net.c b/lib/librte_eal/linuxapp/kni/kni_net.c index e4a3296..c7648d3 100644 --- a/lib/librte_eal/linuxapp/kni/kni_net.c +++ b/lib/librte_eal/linuxapp/kni/kni_net.c @@ -252,6 +252,7 @@ } pkt_kva->pkt_len = len; pkt_kva->data_len = len; + pkt_kva->gso_size = skb_shinfo(skb)->gso_size; /* passes gso_size from Kernel to GPP */ /* enqueue mbuf into tx_q */ ret = kni_fifo_put(kni->tx_q, &pkt_va, 1);