Message ID | 20180111075153.33537-1-yskoh@mellanox.com (mailing list archive) |
---|---|
State | Rejected, archived |
Delegated to: | Shahaf Shuler |
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 [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 558DD1B21D; Thu, 11 Jan 2018 08:52:09 +0100 (CET) Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10071.outbound.protection.outlook.com [40.107.1.71]) by dpdk.org (Postfix) with ESMTP id 86E8A1B219; Thu, 11 Jan 2018 08:52:08 +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=AaErou0E0RnBTLv9QIBo+RWETdBn5lCv4oXfB2ofi0s=; b=urHYNNA0B9mCWit3UREQRtkHpTlSbRc7kkU0xHYrqG2340Dw2PT36XodHlvhWRcEdMk+Xut6Et/C6hGYqX61BUdRcmjOwjWbd1Aw/QSlT3VssbZP0qeVa6evye/NABMhjmKpzSY9GlHA+yDhP+B2qQw8rkxCRB+OY8zEzDETwoY= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=yskoh@mellanox.com; Received: from mellanox.com (209.116.155.178) by VI1PR0501MB2045.eurprd05.prod.outlook.com (2603:10a6:800:36::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.386.5; Thu, 11 Jan 2018 07:52:04 +0000 From: Yongseok Koh <yskoh@mellanox.com> To: adrien.mazarguil@6wind.com, nelio.laranjeiro@6wind.com Cc: dev@dpdk.org, Yongseok Koh <yskoh@mellanox.com>, stable@dpdk.org Date: Wed, 10 Jan 2018 23:51:53 -0800 Message-Id: <20180111075153.33537-1-yskoh@mellanox.com> X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [209.116.155.178] X-ClientProxiedBy: BN6PR1301CA0009.namprd13.prod.outlook.com (2603:10b6:405:29::22) To VI1PR0501MB2045.eurprd05.prod.outlook.com (2603:10a6:800:36::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d1e767c2-7e63-4984-c367-08d558c835a9 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020063)(4652020)(5600026)(4604075)(48565401081)(2017052603307)(7153060)(7193020); SRVR:VI1PR0501MB2045; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2045; 3:sOQKqggUICdObeW1aU1AoTglbf/guC8qjYyanUyL0f8DqGTtSkxMM2GqvwNFJ2iJZdInBQUzBTshye/srumbQtU1mNY33P3u7gkfftHoo4O4kcliSdQ98p1CnLVFxu7V99Xd1e0+58EDU+oCPiwni2i4zIso3Zmhwyeucp7lCwHwQDvz5zlJgmAHblP3r0jxq3QT7RXZyg1QLN+Hq6+/7gu6Qf9v0KmzPsboA/fN05Tiv+3s0/SKxJGFWyuugZMe; 25:OFi+u+aTbkMETv05P0dYJgtJAtBi+uv+jgIf38IyzV0ypy6Uwwt4z4SAzxfmNHctyDJOCScbJ8/H+JdblnFJS6a3myCoM+QyClTwVhXqH1yq4cqnleckogYxMhDwPFp6tpdk4T/IuIBEODPOtVtNFUoMepcJy1xEyl9lUCk49aD78C3lkCNWNm0Nd5Q7RQdf9kkRlUuMj7JEE1iST+Rd18bZ0RPL0xJbyahhFLeV3ZoBCzu3wobPMbEcfZfwmelgSWXGxzVcr54mY7eBGUSX5MBy7IK12uQb/+9jO4VqmeRR2W2/I+rgYl6HWTEf8wTbGXaS7RKgn2dgjhFYYmy/dg==; 31:+9yVRj8eGRsVBtg3MVRcFOJec8E6tNc0Im2ccMGIbB2oZnh9j6a1JgAwqYPQCf4toUEHoU5MVcJ9rQZA5d9a460DDLwLybhW245EBN4EApiR9PJY0Qk87FcQjNQWjg7IZep498gty2SEYT8l/Z6uZworH/GpBqNwrEJYDL+34NvyNX3EwKeTokKN68wZXr1YTbtIG/wTX+sk4jxJBL8RjLdC/O8E78YvK6qkH+jh2Xw= X-MS-TrafficTypeDiagnostic: VI1PR0501MB2045: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2045; 20:r9I63l/DuXhQxZDuEHbYsWVPzTwSKFgXVUzz1UthK+SC+qt/GjxC/nH1Z2NVT6sgxqfhFYAkQ2jZoDytz5ZMap0ILz+tYFLLqtBSpkMgG7ub104geyl2rd3jL3D2L1fc4jGeJrCwQBmSEBBvWnyYvr5fWzAFmFrHIVIw1mg6XXpLSGK2kPwkpzcY8tSxlnpn8EWNXmEzUj3vNt5L07qOoT4z6aF6DNkBFCKWqZGoIt0L/5ZeJyg5iqf5FoT6cI2+2Czavocth7GkgqddqVFpXlgXHtIir+e/jUmvgK+aQ0rY2wgkCK1/SOXzsIUeVPd4oy1MD8PPy2P6tbuMzygJqCMNhQ/C00Jax1+2jbElgb4+Ej25z1RvUZjGvWbZYj5P5PDT850Cuqo4hBdrxsg709Zp3/RhHt7nx1qX7a7NsmHdTgjNoJ1WRErWtKgQtT/GsXYMjISmOARSG6+WJKkA6sbPOWCiQ6TzB/Na5OzE9exAhA84nUqKNv0tmgKot6uJ; 4:vF6L/+NqluZGZxL9kbdsW44uYi7tszKEMOilIYH57hH8JP8z8u9svxwM6ZorIX0kaSrdURkhP8kPXB91hLt8r349rk6PArVzE9jah8vu+W6hdm1Llw+74UxXv5pfLahqHl8BYVtZn8y12Jwfqm/9XemABJsP146HQ0ArQbCXdAqbQYtrTa/3vKD9kVvYfLUNXKbfmx0TpIKxiIMM0/u28wOo43KJzc5nf9TE3fS6zhtpKxJbdr/QCOJ8JmBeJvQ1HAIU2d3FI6liodDHEMnyeQ== X-Microsoft-Antispam-PRVS: <VI1PR0501MB20453CD392ED5F5E07196AB9C3160@VI1PR0501MB2045.eurprd05.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(5005006)(8121501046)(3231023)(944501134)(3002001)(93006095)(93001095)(10201501046)(6055026)(6041268)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011); SRVR:VI1PR0501MB2045; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:VI1PR0501MB2045; X-Forefront-PRVS: 0549E6FD50 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(366004)(376002)(39860400002)(39380400002)(396003)(199004)(189003)(25786009)(86362001)(4326008)(8936002)(50226002)(68736007)(81166006)(36756003)(97736004)(81156014)(8676002)(106356001)(6666003)(5660300001)(105586002)(51416003)(7736002)(59450400001)(386003)(305945005)(55016002)(53936002)(21086003)(47776003)(66066001)(48376002)(50466002)(1076002)(3846002)(6116002)(478600001)(69596002)(2906002)(16526018)(16586007)(316002)(52116002)(7696005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0501MB2045; 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; VI1PR0501MB2045; 23:HJHsW0u68n3Gfkp3pgFQB0LY09zNhQYwlcFx4Zt?= mm4/0KHSDrennao6Cd7mjx9nTzMcRwV7whjtn8nP0oVrbMcr843B9oIB5zaaRBGoBVy/lJszJirXrP6gc2+TBtp96d65rXhAEqwONUMyRbOYewe8Y5BcAr116zyfY+XsNrztaUjrcb5+lq1Ch8lMtbhlSV7JCCOHVV9bZvnL8hU3VK+LkFRN8G2SVlI/gqLSFgNIErkc5Z6bdhE4f9KPU+KwAm1XXdYWDj/zN4YXuX8f19Ci/feG/Q+pol9Dful8s1nAoHpc+UwjwX7JQAv0h9wd0iAhjoeYE1Bb42ypkTPIfjLacpb37qA3BgVa07O2TJB/g+bhBb8hfU70P88fKlwK0QjM92z8X+8UtUJFs8/cqvdpqVAMOt86bXHpezaVH01QhlXJqxL+18xmgSCm9iwxZRq7l+FoL1j/Ct5Fw6dQITNcnHMbGzK3xC43j+E5lBt/k34KxDkAughYyYo8j/l9UqU22Ry6JHIaSum5mpdeVz8deFDt8EL7zU1FirqljQQtpF1S/cOo32WovNHCbmHkaPVF7Aw8BbR5QP45HAMm1FTZyaQVqK5NVkxXh0CHC3NY36grdf6MPTZzdicSeyjExTmavCZbLGiAoL4Q2WF/e6NqKoSmecmCsXOYmS7tmh7oNP8GPmDZff3bpNegZLm5xEFM5EW6qhn625TIO65kz+Wnalm3BgZMFAfYNFADW0kk8+aOpyB3NR9KKb0T/Antrmf4jm1aWP8LDvilcIniE1rjyMwnFKDUaU8pfmNQM4xB36qlAX7+LUcrNA3w/WryMsJXTdPor2B9rIrMXJPbJ8Zr+hYNxHyYNpa5av4h3cdZGzswhu3i/FjkvoZGRcp6JJzJxPi236+/SWC1vHSR5qyXMz0q23F/rPGx+MK2ipV7IgRBNugjAhUQaozoBx4upYGJfrSi6PCwl5+mDkYDre+QC6XBoK/Yd6+Gt1r7V3szz4yoae24i1NV2tZPJorqkyjzgLkySsXiqBcAGChC/Vg/8CCBllDyWLpjQmruMgNavwbM1JgtAH1DTT540/Yu6 X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2045; 6:EYNBQojs+yIj18YyQVNd98CDXuWZ8FxaECxlmrg/qeGwUD0w+JWyzSgWLnknu1FPcGJnPSs9WXDn7u7OJ97lmx3iGT79W5Y6/oQ0wSHNrtUfeVTSTd8vdFi/PwWjhoNJHPd+WUq3ctwTeyA7oX3cVKjObTFnb47SG/HHlsjq1joutyFaSwlDMQ5udNBKD456NRS8+0SH+DduQjChmnnZdRtPxJVjR/YmQA22V6hBrM6XIjXlT9RcxO2OxMTNWdoQtIilQ/FEckggSv4PA1nAA7pHFYiQKtVMj9D/jTGwzoyy173fKkGsUrA902W0Z4fNtulm7xGGw3LqwbDLf4+bV0lyNiUJYNT2qxyoNZxF27k=; 5:Mx/gTnqdvgGRPqTxT7ovSHy2vpGFfrvxY6ZeNwsfwfhc71/oVM9KO7zKq1RGdythqojaIkzzMbFl/qsQaNzkoUbBsj7UCENLSDs7fVvsUnPpIvw3VKUkISyrT33sUBfsTj0aAEBhyBRJteLfWgD3UjFIP7IUtguqO27VxP3NAY0=; 24:XKMurSeefRS+RmBT/bhlZNQmLg6IYPyBL9OFt4GIOl23slm1RJSWyQXkkN2RBVCfL6+kIkWx6CPWuplZHSX/RZRInP0kh3yrgoI/xk5I5OE=; 7:XCoszy+AqHNXY+GXfqNg4zLq0Vue3r19Rs4f2Q6CoII6naD5Rram+jUNpHqZ6p11pGMojDhB5scnB2igPz1ztRfVagEv2oJIEdgFXkg10wfw+k9z/+s50k+F76go1OrPnd1de/BKCrz3mJ5LcMaiXj3vMHzr1O9v8hlfZzeI1g3tkNoVAXmWfJa96eNINtIZ7ISC9vI90ScuhE5tvNUxK1ICIYvFwVZkG/99PsbKvKYWwb2FXEKcOS8Ehf1R0Aho SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jan 2018 07:52:04.7783 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d1e767c2-7e63-4984-c367-08d558c835a9 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0501MB2045 Subject: [dpdk-dev] [PATCH] net/mlx5: fix parsing all-multicast from flow item X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://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: <https://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 | success | coding style OK |
ci/Intel-compilation | success | Compilation OK |
Commit Message
Yongseok Koh
Jan. 11, 2018, 7:51 a.m. UTC
As the dst_mac of allmulti is already masked with the mask, it has 0x01 in
the first octet. Checking the least significant bit only can't distinguish
it from broadcast or IPv6 multicast.
Fixes: bb47fb6e6067 ("net/mlx5: fix flow type for allmulti rules")
Cc: stable@dpdk.org
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
---
drivers/net/mlx5/mlx5_flow.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
On Wed, Jan 10, 2018 at 11:51:53PM -0800, Yongseok Koh wrote: > As the dst_mac of allmulti is already masked with the mask, it has 0x01 in > the first octet. Checking the least significant bit only can't distinguish > it from broadcast or IPv6 multicast. > > Fixes: bb47fb6e6067 ("net/mlx5: fix flow type for allmulti rules") > Cc: stable@dpdk.org > > Signed-off-by: Yongseok Koh <yskoh@mellanox.com> > --- > drivers/net/mlx5/mlx5_flow.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c > index 305b2ec01..d01c8069b 100644 > --- a/drivers/net/mlx5/mlx5_flow.c > +++ b/drivers/net/mlx5/mlx5_flow.c > @@ -1281,7 +1281,7 @@ mlx5_flow_create_eth(const struct rte_flow_item *item, > eth.val.ether_type &= eth.mask.ether_type; > } > mlx5_flow_create_copy(parser, ð, eth_size); > - parser->allmulti = eth.val.dst_mac[0] & 1; > + parser->allmulti = eth.val.dst_mac[0] == 0x01; > return 0; > } > > -- > 2.11.0 > Seems you are introducing a bug, for broadcast Mac addresses, this will not work i.e. 0xff != 0x01 but it as the multicast bit set. From my understanding, Verbs flow attribute must also be modified in such situation. Are you sure about this change? Thanks,
> On Jan 11, 2018, at 12:20 AM, Nélio Laranjeiro <nelio.laranjeiro@6wind.com> wrote: > > On Wed, Jan 10, 2018 at 11:51:53PM -0800, Yongseok Koh wrote: >> As the dst_mac of allmulti is already masked with the mask, it has 0x01 in >> the first octet. Checking the least significant bit only can't distinguish >> it from broadcast or IPv6 multicast. >> >> Fixes: bb47fb6e6067 ("net/mlx5: fix flow type for allmulti rules") >> Cc: stable@dpdk.org >> >> Signed-off-by: Yongseok Koh <yskoh@mellanox.com> >> --- >> drivers/net/mlx5/mlx5_flow.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c >> index 305b2ec01..d01c8069b 100644 >> --- a/drivers/net/mlx5/mlx5_flow.c >> +++ b/drivers/net/mlx5/mlx5_flow.c >> @@ -1281,7 +1281,7 @@ mlx5_flow_create_eth(const struct rte_flow_item *item, >> eth.val.ether_type &= eth.mask.ether_type; >> } >> mlx5_flow_create_copy(parser, ð, eth_size); >> - parser->allmulti = eth.val.dst_mac[0] & 1; >> + parser->allmulti = eth.val.dst_mac[0] == 0x01; >> return 0; >> } >> >> -- >> 2.11.0 >> > > Seems you are introducing a bug, for broadcast Mac addresses, this will > not work i.e. 0xff != 0x01 but it as the multicast bit set. From my > understanding, Verbs flow attribute must also be modified in such > situation. > > Are you sure about this change? Indeed. I was trying to fix a bug about the control flow. In priv_dev_traffic_enable(), if VLAN filter is configured, it isn't properly set for broadcast. Looks like code should be changed a lot regarding allmulti. And I heard Raslan is preparing it. I'm taking back this patch so that Raslan include the fix in his patch set. Thanks, Yongseok
diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c index 305b2ec01..d01c8069b 100644 --- a/drivers/net/mlx5/mlx5_flow.c +++ b/drivers/net/mlx5/mlx5_flow.c @@ -1281,7 +1281,7 @@ mlx5_flow_create_eth(const struct rte_flow_item *item, eth.val.ether_type &= eth.mask.ether_type; } mlx5_flow_create_copy(parser, ð, eth_size); - parser->allmulti = eth.val.dst_mac[0] & 1; + parser->allmulti = eth.val.dst_mac[0] == 0x01; return 0; }