From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 732F4A0C40 for ; Fri, 16 Apr 2021 03:57:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 67B591624E9; Fri, 16 Apr 2021 03:57:24 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mails.dpdk.org (Postfix) with ESMTP id AB94440140; Fri, 16 Apr 2021 03:57:21 +0200 (CEST) IronPort-SDR: Ub3o6pYAFwxK0ZkupoJxZczpwbPvUUIrpVSnXuuvRwU4m7ZbQ+YycELWRbkM66G3UouXweB/3B 4qAFqXtkztzg== X-IronPort-AV: E=McAfee;i="6200,9189,9955"; a="174470303" X-IronPort-AV: E=Sophos;i="5.82,226,1613462400"; d="scan'208";a="174470303" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Apr 2021 18:57:20 -0700 IronPort-SDR: u+cDz1NzUZ0rMxZrR6Jvb7IWipG944Iob6MPe4A7eruq6+W9dhZYDw2JPOoZHQQ1p6tZppZI42 99ZYpk2df+tg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,226,1613462400"; d="scan'208";a="522570054" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga001.fm.intel.com with ESMTP; 15 Apr 2021 18:57:20 -0700 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Thu, 15 Apr 2021 18:57:20 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Thu, 15 Apr 2021 18:57:20 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.106) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Thu, 15 Apr 2021 18:57:14 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WT4/HFwDE7C6Z9p4JI98WgO4dHv9alZhEbflo6KXujFQvdR3lwH/mRCkgSCHEicAlp0lNur8LCuv8CJKIgvcrwR8k3k7Qg+TJ2W/Fw8jo4e2zDnP+6jKSdM3Mi2tIef1OZRiNDVARug07lPpRS5vjdboNbUqA0RHvzz1LvG4+O9M1jYNJP4zcz6Avjse9+dvDu/ol8ZLTIBfZe+1hCgd6EUQz94lRw4y6z8gF0zlZoCRyRMLr9UBJf/djVN0wZ1fZwXHo0EnuzxCgHM5RVErzcI9jQtMOYYRhMIx+fNLC+onMbGNVlQSul5FpnLH8II+n2PiSNEfpFNNIzIu2nNkGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FOAcPj/bk0VW5+Eg20BqdSNhR8f2K6eQTSOFrzxgl9g=; b=J+fNEyDozwbUVA3GgtJMRbziQOL7PxBQNIcZSrbECmo5kBhyPLvEFg2fKa6sjKZB0qicAiLzADJZSYdOyf1lz53zICnxZdMnyXaqkzH7LYyZxMfMluZ0G9zCXzPcjFH/rQAtAmhAAGxG8zJotjJbNmQ/EysZq7CoZEI0mYmoyNaeoqRLJlAok1xDeD6bYayJC2F67DNKY41KkisEefUjRGBfibtxcu2t+iRIb/iYFeVXtXTNwO5UyKOYSf1HVLlz6wDn6gzwEEno97L2l/RLMfi5Zz83jRCb5ynHjt0M12LeZQSI/a3bZQacMvLje9B6MNoS+yjsYA8uNgJmvUgEvQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FOAcPj/bk0VW5+Eg20BqdSNhR8f2K6eQTSOFrzxgl9g=; b=abC9ZkdjchevdLJjlP4QhaiyI8uPk5DPeWeQzQbomFyuhkLctVkp/LrKub6k6ksWO91tq/ofE6Ek05Yw3twM+L6t//QttfFqW7duCMfIETjPwM5IbdHN42tyQKA0yK9vAf8r7gBSP1DfkF8mBU3pIXCLZ8AwyJz+e8x6VndNpgE= Received: from BN8PR11MB3795.namprd11.prod.outlook.com (2603:10b6:408:82::31) by BN9PR11MB5387.namprd11.prod.outlook.com (2603:10b6:408:11c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Fri, 16 Apr 2021 01:57:10 +0000 Received: from BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::2dfc:3be2:c305:6346]) by BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::2dfc:3be2:c305:6346%6]) with mapi id 15.20.4020.023; Fri, 16 Apr 2021 01:57:10 +0000 From: "Wang, Haiyue" To: "Zhang, AlvinX" , "Guo, Jia" CC: "dev@dpdk.org" , "stable@dpdk.org" Thread-Topic: [PATCH] net/igc: fix Rx packet size error Thread-Index: AQHXMl3fODo4MPgJOUGv+v37CY1odaq2YS5Q Date: Fri, 16 Apr 2021 01:57:10 +0000 Message-ID: References: <20210416011407.29236-1-alvinx.zhang@intel.com> In-Reply-To: <20210416011407.29236-1-alvinx.zhang@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.0.76 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.46.54] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ab40faa2-4fb7-4040-c82c-08d9007af2b9 x-ms-traffictypediagnostic: BN9PR11MB5387: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7691; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9L3AltKlOFAY5KGDDiXejT3C+ToyJpWZAOcDG1I5CED1Vvqtlt17eCN1l+FXJYoeSmJz1pqxRqcbGn3aUDX6LfwHiL0kyI3O3eiVsvb1zCvHKx9QR3MX1kSXersAVr97ppD3774rJFZRIcsbHtqA0s/XwfPugJxHhrkm7/uo1WyPj0uQQ+v5XwTnl+YuPV7T+Wpibr8dedvjTMxFeiqXT+HdwWnut7w9YSRqtQ4gumQQBlNv/HnT0yNfI+oSbHeZaX1meD0FtLy5EETZGNU/JPzO6XmVym1qw3pZQPSWzGWXYjYOFTTnOSL7Pcxwnpdnck9NVN+Nxehi16+dzCbMI+QyI8t7gd6R34/AWXsdveBkQ0ZGD2LKREdyU05CUQ/NRXfOUloUI60Wk/igXKuwAXRMBK387yFhNrciXYIzti3p8NgZtSyf1wIL40u8x4JeY+ak9RzaIafGMZZK8G9oQ+Re2QHU/ndt2HLbGvi3XtI9Rr9VtfsXp1xKkVHZn1Kk7vfk/KhB7fdY9EblNl2x7JR6XxXGBepEwDy8p5y8vCkAkjyhRFQAgxv39twlVfzYQLSEpXbc+hEQSarhWdPuxhirTbV60DRDRfNitZinMHk= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN8PR11MB3795.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(39860400002)(346002)(396003)(366004)(136003)(376002)(33656002)(54906003)(83380400001)(110136005)(66446008)(53546011)(2906002)(478600001)(316002)(64756008)(71200400001)(86362001)(66476007)(52536014)(66556008)(6506007)(122000001)(7696005)(5660300002)(55016002)(186003)(6636002)(26005)(8936002)(9686003)(4326008)(8676002)(76116006)(38100700002)(450100002)(66946007); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: =?us-ascii?Q?kjOAeoRH5xeoq14ERSgIAnioLxnz+K1AYXyiHcM+XiQ0OeKXvTe/Do2CMhmH?= =?us-ascii?Q?vFfOWHYv2WYW5c/YHsxr1askjpRB1iNVLB89WmOCqbxBDy0ZNMSucccdyZ+3?= =?us-ascii?Q?mbZHBnKhyHxowmQEgCmKMOYkFLOBCfYLiRkXTc4KFo0JmfP30ekYwFIW6kK9?= =?us-ascii?Q?v9u/t4/cZP/66tQBKacwMSe3pLsI2RyALWdIowtfUGRm0kXyb9ibO9dUcmfi?= =?us-ascii?Q?6q0Ya0CjFH3tDhHkA7ZigFE509sKKOqPVZPA4/hKSGeiHgdaBcLuZ4aQdN+q?= =?us-ascii?Q?xQzoG86XERpnOej7djp1zpZcCmFQHcL4lSXj6UNZC/WlQnf7vTqGcARdXyRo?= =?us-ascii?Q?/cYEPysyugxg36MJxrMTwixkqbqrugkaCWBVcxi5hUK0PPQqFL4Gj0TruCj4?= =?us-ascii?Q?wYrRmZ5ZUSNjk+pyf2A2Zn1R0K8d/5ff1xpWPA7TLtv8W+OwBcsPoHpnz8Lg?= =?us-ascii?Q?ozDtSRkdztYeQKn8OglPEl8hg9ho1Vxu1FBTDWzBLQ5KYWa5SOQsy8bm3J0M?= =?us-ascii?Q?+xrKLf+bVK3jlfgqCVLFEtcHQo6rxRz7mZrAVQMpUXFiE98BMVc6UlKwBs1b?= =?us-ascii?Q?MYuTpRXrFHobUD/AxkqNFfXRSFWNH0Lgj+uk4CwfRJhjBfP/gDVq8PihywcM?= =?us-ascii?Q?fMh0LrdTdKacmeV9LCz6TK6baxiFZszfzOWSEnZVsOMMiGsDfeO1inrU+mU0?= =?us-ascii?Q?DBo+5YRVLjAntvmNXA7TlLFs8lYJJmx8RqUbJAryR/h9PZ79APklbQdjKojj?= =?us-ascii?Q?uFsecPO1briRHD6ijley0Ij9LMMAPIJCRzdKZ8I7zvjNLIVi6SC6gG/wDBX8?= =?us-ascii?Q?+6s25P2FQUvCTEwvCu4EgS6d/lX909TLXKkoaUGBoBO1s26VRuzWswVlqpdI?= =?us-ascii?Q?yrN5LVwMzGT4d7UjxqDca2Wm9BqeSuqQFhsoLOdP0D5wYwX1oshvwLQGRPQi?= =?us-ascii?Q?+6OMV5CW8cugZ49E4wYIE61KQsd4zHuVYkW8s/E1LGFfHrnEuOAUJdFnAycO?= =?us-ascii?Q?1eo68dgBTDNn/fyvDbI0fCpqJipYIvf3Kz9oOg/2pw74Z1HxAcAMjw53Tr4Z?= =?us-ascii?Q?KkGtX5wiWhiEX+ihmDRMJ7c48sVdEKuDpYZ1YKg/SsaWfE3vsxVc9l6qH6yR?= =?us-ascii?Q?JbozefQ1pWAQsoPg5onFTgNnkRecEEWfjq5uWZSKADP7f/MSvvLbHpP9dttv?= =?us-ascii?Q?0JGIvJ7y4TXJd+g7zr58wLi+Nv0AD7lsT9KZTnquWs2bSuBc27EC1Ux4KTAa?= =?us-ascii?Q?XeuH0lN5lI5vtCWkaGcf4XS+//B7MxtDFvCzS+nGooc3xHoWXziSsxIZznxM?= =?us-ascii?Q?3iU=3D?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN8PR11MB3795.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab40faa2-4fb7-4040-c82c-08d9007af2b9 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Apr 2021 01:57:10.3710 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: /UXQIg5HaaWfvS7ecdJ0fDLCdTJH0TWaFE1c0ApIHXKObK25vuHFJb5SOT5MzHpGzkLkVNGtJi0vWcO0lGiLoA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR11MB5387 X-OriginatorOrg: intel.com Subject: Re: [dpdk-stable] [PATCH] net/igc: fix Rx packet size error X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" > -----Original Message----- > From: Zhang, AlvinX > Sent: Friday, April 16, 2021 09:14 > To: Wang, Haiyue ; Guo, Jia > Cc: dev@dpdk.org; Zhang, AlvinX ; stable@dpdk.org > Subject: [PATCH] net/igc: fix Rx packet size error >=20 > When DEV_RX_OFFLOAD_KEEP_CRC is enabled, the PMD will minus 4 bytes > of CRC from the size of a packet, but the NIC will strip the CRC > because the CRC strip bit in DVMOLR register is not cleared. This > will cause the size of a packet to be 4 bytes less. >=20 > This patch updates the CRC strip bit according to whether > DEV_RX_OFFLOAD_KEEP_CRC is enabled. >=20 > Fixes: a5aeb2b9e225 ("net/igc: support Rx and Tx") > Cc: stable@dpdk.org >=20 > Signed-off-by: Alvin Zhang > --- > drivers/net/igc/igc_txrx.c | 22 +++++++++++++--------- > 1 file changed, 13 insertions(+), 9 deletions(-) >=20 > diff --git a/drivers/net/igc/igc_txrx.c b/drivers/net/igc/igc_txrx.c > index c0a5d5e..68b102d 100644 > --- a/drivers/net/igc/igc_txrx.c > +++ b/drivers/net/igc/igc_txrx.c > @@ -1290,20 +1290,24 @@ int eth_igc_rx_descriptor_status(void *rx_queue, = uint16_t offset) > * This needs to be done after enable. > */ > for (i =3D 0; i < dev->data->nb_rx_queues; i++) { > + uint32_t dvmolr; > + > rxq =3D dev->data->rx_queues[i]; > IGC_WRITE_REG(hw, IGC_RDH(rxq->reg_idx), 0); > - IGC_WRITE_REG(hw, IGC_RDT(rxq->reg_idx), > - rxq->nb_rx_desc - 1); > + IGC_WRITE_REG(hw, IGC_RDT(rxq->reg_idx), rxq->nb_rx_desc - 1); > + > + dvmolr =3D IGC_READ_REG(hw, IGC_DVMOLR(rxq->queue_id)); >=20 > /* strip queue vlan offload */ > - if (rxq->offloads & DEV_RX_OFFLOAD_VLAN_STRIP) { > - uint32_t dvmolr; > - dvmolr =3D IGC_READ_REG(hw, IGC_DVMOLR(rxq->queue_id)); > + dvmolr =3D (rxq->offloads & DEV_RX_OFFLOAD_VLAN_STRIP) ? > + (dvmolr | IGC_DVMOLR_STRVLAN) : > + (dvmolr & ~IGC_DVMOLR_STRVLAN); Just use "if ... else .."to make code readable: if (rxq->offloads & DEV_RX_OFFLOAD_VLAN_STRIP) dvmolr |=3D IGC_DVMOLR_STRVLAN; else dvmolr &=3D ~IGC_DVMOLR_STRVLAN; >=20 > - /* If vlan been stripped off, the CRC is meaningless. */ Looks like we need to handle CRC & VLAN_STRIP co-exist issue: If user enables VLAN strip, then keep CRC should be rejected, and vice versa. > - dvmolr |=3D IGC_DVMOLR_STRVLAN | IGC_DVMOLR_STRCRC; > - IGC_WRITE_REG(hw, IGC_DVMOLR(rxq->reg_idx), dvmolr); > - } > + dvmolr =3D (offloads & DEV_RX_OFFLOAD_KEEP_CRC) ? > + (dvmolr & ~IGC_DVMOLR_STRCRC) : > + (dvmolr | IGC_DVMOLR_STRCRC); Just use "if ... else .."to make code readable: if (offloads & DEV_RX_OFFLOAD_KEEP_CRC) dvmolr &=3D ~IGC_DVMOLR_STRCRC; else dvmolr |=3D IGC_DVMOLR_STRCRC; > + > + IGC_WRITE_REG(hw, IGC_DVMOLR(rxq->reg_idx), dvmolr); > } >=20 > return 0; > -- > 1.8.3.1