From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40084.outbound.protection.outlook.com [40.107.4.84]) by dpdk.org (Postfix) with ESMTP id 538FD14E8 for ; Fri, 27 Jul 2018 04:11:13 +0200 (CEST) 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:X-MS-Exchange-SenderADCheck; bh=v7S9Tu/uzAOdz5XPJtWOBEWGSALMvszUZd0Bl/AKaxc=; b=L66UIj+CpuaFFtNT2LO8PSjEvSvjzwNiDZvdLylnuk3+wTYOxafDf46aXD2jDEsxvxaeRsot/9VhJ4pbaBvSlajZJedh/9y7e92kr37Claoj7/PYIRlItTPM7s27T3mRluc4Hr2ptox7EmyR50IerP+eOh3b5e7Hn+sSQWMSEgg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=yskoh@mellanox.com; Received: from mellanox.com (209.116.155.178) by HE1PR0501MB2041.eurprd05.prod.outlook.com (2603:10a6:3:35::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.973.21; Fri, 27 Jul 2018 02:11:10 +0000 From: Yongseok Koh To: Wei Zhao Cc: Wenzhuo Lu , dpdk stable Date: Thu, 26 Jul 2018 19:09:15 -0700 Message-Id: <20180727021019.37388-19-yskoh@mellanox.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20180727021019.37388-1-yskoh@mellanox.com> References: <20180727021019.37388-1-yskoh@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [209.116.155.178] X-ClientProxiedBy: DM6PR08CA0022.namprd08.prod.outlook.com (2603:10b6:5:80::35) To HE1PR0501MB2041.eurprd05.prod.outlook.com (2603:10a6:3:35::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0829ba04-ea37-4547-82ab-08d5f366394b X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:HE1PR0501MB2041; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0501MB2041; 3:2GIr55EaN6oHJz/rGaSzmP099BPmhMrTVGr29ToQBuCR9WWo2M5T9h6rCS54lvHr39XSGjhq361oWGXziW/8h78v5+rW1qJtsUluV60LMNhyXHuQgB5TVmRLjX3PYO5vDbI8bmumWvVBq+GFKMLpTRMk/cAMO8GptT8o8u8gkVjYDiSimjfShhSvhQhAnM3hIVtbaxWr5KWsjZGolPK80vdL5V3yucnIJm/T4AuEtO+NMb55xcod05f52elgXrzK; 25:ZCeqvW6/dBP1pGsS0I1TdNz44Guqh4RUkZ/Gc3poeZXoln8Y5SLGsByVk6n9UZ+4qj/9UDnxGtcvZ2Mzj/CreVyltSeG/s2ZsVGK4WL1Qd3qnKsv5unO9Hfvu8qEEm7rgyIC8vu5gkHahWeMosYrsKrcQzZUvGCCPQXvDsRx0EQD3g6zzYc/YqZmIV3GKgsUD5yytco/noljX6amEVbxxiFjMWOC/kgFtlnoJYNlo7Ii/C86Y1pj6E9WtKIMAHe89mtWK0CW3apdciTRTydjNQCjRBNPC8Ovz1JdlHbRRVKlVhuC+rK0nEs0eEBTsNmV4wGeukjzQQ1a+05Zs+3szA==; 31:BLaEmjKFHIDvsoTFO/jWDXN92GYVlhO84mwvAmUI2imbd8AKJqEVL0YiF5u+v4oIzMYzDbP0USUUOmJSBRdK+wBqUlRpHcazq46X+n5jdNP6oGdfmkhnlk3hPualB4V16oaUzimVrI0Fjn/gy2BGJnNSEVJ3tZVgqEFo0xPOxpsP0KbVgwCvMRWpLP1UnCG7f01UI9TzEtNduFoxAABSiIr0phXmQK4o+oJ1XDvUFs8= X-MS-TrafficTypeDiagnostic: HE1PR0501MB2041: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0501MB2041; 20:QKI4j0VafqQ3b5YObKep+GFN7ogcQvzIeVf123r+lf5lf4rgvWO8iGSTR+HoxcMcp1M08Q35gLEbE89KaTSMYicLWGjIElYqK8JlcdtOISkvdMIblAKWYbWVFUd7EVy1OdWjEgnogfYzzd1x6j7amLSM9Q93/OjHEp8TYyF9mNP82S8VV2za1ZADdrB4z4jXp1Lx+f+C7uLh6KcvXggqAXGxfYVa3f346KHtr4z7cUiLNPUfw/XBIyeZPDoG7//VIeb4ALKkirusGKK5ARONVTCHmjVYfWA8bzCBahsxJL5Y4ZQBvmIM2/cVwDHsKRkB7G3znjYG9wHzRAuzGjazrZFyZOLTzO3UpO0oD/sj0FgNW85Eg981dGuJA7RT/3x+VBKbiuhiA02Hz1nupqyWtzD3s+mo3VT6jEzcou6Btd6dJl+pOQPVQX8rCbqwp/vZRV1A3zf+BMDMwZnQ3uv36226rQOEembYhENMe5bJFjp9XjcG4eWCn6+qByVkscuD; 4:EOx1ekIeWqz5eJpIRCmOjRwffWs4TAL9TkB/KZAqWHb4u+6Cf6eQWx9ELWhn6necjCgnpknxwx0o9OoC0PUT8RlNLNNwToA5yaNpkToigu3C1ip9F6E2Z1mveEhPg9QgV6jAHIxddDyZ6PATJaTSsMfUrAoU8dvQqb0TrUlXzcNfYUFG8W//bVSuVYBTmXQtncP7fHpkABiOuq8O2cMZjDVIA+gs9oiUEtCpI1sfNcLNJtBI2KCYz/vaY1WKJuP8VL6Vuu5+konBG/DJc+BAX6fQKuL21ZWMghn9cxK6KyR48ChLDH/oJzdHS2MqIK25 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(228905959029699); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(93006095)(93001095)(3002001)(10201501046)(6055026)(149027)(150027)(6041310)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123564045)(20161123558120)(6072148)(201708071742011)(7699016); SRVR:HE1PR0501MB2041; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0501MB2041; X-Forefront-PRVS: 07467C4D33 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(39860400002)(136003)(376002)(396003)(346002)(69234005)(28163001)(189003)(199004)(6306002)(55016002)(53376002)(36756003)(4326008)(76176011)(2906002)(105586002)(26005)(2616005)(25786009)(956004)(486006)(21086003)(386003)(966005)(106356001)(51416003)(7736002)(86362001)(53546011)(575784001)(50466002)(16526019)(48376002)(1076002)(52116002)(8936002)(54906003)(5660300001)(11346002)(3846002)(16586007)(446003)(66066001)(81166006)(68736007)(316002)(69596002)(7696005)(6116002)(14444005)(97736004)(53936002)(476003)(81156014)(50226002)(47776003)(6916009)(186003)(1720100001)(8676002)(305945005)(478600001); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0501MB2041; H:mellanox.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0501MB2041; 23:37T0YzAqdT6upM6sfqF1wXCh+i3J4B1Ql3XKmly?= =?us-ascii?Q?ZcFD3pfUXIXU+VhU3w45TJfhCxM/92W5F6/UaGZbkVBYHK9b807YkAuhtNf9?= =?us-ascii?Q?2XDEvmW9+nd+o7+A8MyyePUWEu4U7U3VV4TGxlpunCE2ejrvmCx2IgDJe49O?= =?us-ascii?Q?NsEczNPlLVYHIPN/y3nsOUv1PXBOm3VMRo7NKjiAE4cIgAVIw7OA+iw4N7v5?= =?us-ascii?Q?xuJYy7mL1+3DW+K8GvEALNnRgxjDus6rQiWNMixCDGAAjCPg0IhJAuRckPqg?= =?us-ascii?Q?7dg+o+bqvEzQu7oLzLsQX1xfr9dvtKM3iRUCDDqgxYjVbwyMOE5HkhsmzO/w?= =?us-ascii?Q?P6qFCabkYKCLMww5S+A8zNZBlMU2KHu/fpCuISVsgQT8NX8x1mCcdCCo3xxG?= =?us-ascii?Q?m/IHjQFBS6WQnmnNpIg7q5keVxux3bkMW+dfN/BzHD66J8QnJJjtTmApbbSc?= =?us-ascii?Q?nWz3ANlOMYDK2DHrJaZV+SPGfrD8lfRF6YgQK8/LuWx0+cm0YbjqgT26I/GM?= =?us-ascii?Q?NK7kNSok2VDA/jMFhs9ThVAMB4GfWsY5hyPuWJ9TAPtwZoKhvztXybF63XFp?= =?us-ascii?Q?dIdsQBZSUyoM4GR8Sbl9BzWYeFVoAJL4A7qddxbXs+MuX+qwGOF3tSBlRa1J?= =?us-ascii?Q?eT3EjPOMIfQhIgZTI5gXmsQstJfgBrfVXsbCPfQ8eV8ECx/JVYYowLbn/kOd?= =?us-ascii?Q?HSzyJPHWyl9Ji011ikLjpmWuex+IiIzyv+dt0vjW5KUh+VTnJNRA+ad5Z1Tg?= =?us-ascii?Q?QU+kJv6mulRy8IiE8r8MW3LeItdCOldaf6ecDK0p5cFKbMP5gpCnhvDGu51j?= =?us-ascii?Q?46z6+MbFKYVLYbP8YJ6LjNK5cASQ4P2jzsaRxqca47h9VIb0nmXC0fTlHnx+?= =?us-ascii?Q?abJIiOZaq2Q/lVloK7ebbINubnixcfiqVylKJW0hVn4BbNnNVg9eP0O0W+2E?= =?us-ascii?Q?Hxzb654YDfIoh7fiz1A74QzLmInfQIqpDBcpNM6DlFrJ8LZP8TIzdqXUNQPM?= =?us-ascii?Q?OTVXb4/hiMb4JR/5srOXsBVUYnZEeCRMBhSGgQIdp9axq23oGq5qap5ab9Su?= =?us-ascii?Q?/X+bQ2c4gN6Do5zLqqphbCQ5LHmBG+91wZO5yUsYbZ7I/Ybpx7OcShE20aPi?= =?us-ascii?Q?jzCi5mWKmBf9dcxHQX7U79PT2RYAFtIv7DjJaN94At4ZmOHp52XbDV+gHCl9?= =?us-ascii?Q?IegcomwFXbHx8+WVtmXA2GXUw3ad0jisciY6x7FnsbO2Sbt9pw/NhVYAKmyJ?= =?us-ascii?Q?5M7Q1Wr8sX7lVa7Fbd1MbD57SmVdgZ/3tEj3bMu8hNkpI0zGhdOyTIWnpnKK?= =?us-ascii?Q?MT+8/XT+tha0s8Hf5xiFN4DsJjpjsrYmewPB4R6Vji7CScPqMnpPCytV874I?= =?us-ascii?Q?TQ/tGnl6vNwwZ7eCPR4qaUOobwi0HovIqFGLWCAyb652rRWPR?= X-Microsoft-Antispam-Message-Info: VcTIHm+NsX8XNPc+Ao97Hy4fV0dDU38SHMvGBM7qG3ojyFMlYNlHjkR5Y6yXTSCZmrM7++a8HceZr34DuVT+eYx7mDLbydqh2ke9iW/tw4z+RGr2/V6gcVEbJU9wHt3b3U4yrM12RM7GALBR5lvWGhhSXGy3n+ZfUhi3SBec9wto8BpXM1DNje+nKdpu4jG97uz9+ogFDsRS7j/u0bAHZ3BJwx2SV7yR+wW4gnpw2Ycv3ujZb1FjGSS31TIbnxttFqT+EbtB604dpMqHFuKXjjCWohj0n9C227UjIgpKrSVe+O1N7zIKIrN5Up2FP968fG6IMv/oU+OnH2Rhp2AdvAOWyIaYMovRmF9uYG52D6Y= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0501MB2041; 6:B3G3oiE3rIrw1ouvB9gL02Oyl3JAJmwkgsPyZdcSJPCTwqJUztaYHzU36HY/Nob0JJDmL6Ke5Xcz8xEYhp50kVnmXyHJi0xl3fF7nPPVoUXAFGrFCqQ/nIblWKYfbxB3p5jaI60pScXlPtibHwrWTCTeFu6jacre/u8U9uDWXH8tJ1K8H9CwdMrMAjjKyLt51iVaEKPK9l0sSYEWt/Dh7xWgWy4NJ4bwkseixTGI/PV4uzwQ6XRCvn9HTACpKzieYw8HUI+I43qa0ofAmk8mEcHO3v8jBSUi9kJIXK67tSN+uH8mIrVzGFW07JtUTvtw3en4zsMPNiJ+HiMHNjkTLpFToVINO6RWHUsb3aYW5Y4q20jfdfgKS1gzm+zuw4fdhIyGx5jIvqGoH2mypqqx+dZzrccN5DQ2bR+BVyrGmAPht0jS/G84QdyeowyrOYJFT3ajEdEp7CE+MkFxdJHPPw==; 5:cw0wRLZLhUCSBSftNqbsmE21OXgs8A0/Bp/PoIAf0DnTXJMapOEMdJGdb1hPs8tBvtx/ilyIoSLDRPsBcpB9lXFMXGGJvx7wg2kwIG0e6WmY9d7w2SJQNNO5LcWVmWbClQztIMw/CYaubZKh4bdO4HHloIIjVHjC5yXff6Crdl4=; 7:nZRMsRz1jQfXNqoqGq35OOl/J4pLIUFaXgfG2Ag+qptSo1yl9Qc4od1xOwH90jPstM3bpUC7H4QDJXWl/DUMk6YYmF4m1V7gn/6H0tgol2tsLrGFk9BeABZ2dCBqw1C3LqSRanAdzPUJ6dXllH6roDpnGThKidewi/cdXgKJxeGXFTMfxekGTQrxLOmXy2mzil3KNx5A2iLCXMTj4x+7oKrr2VkL8eP3DhSiS6wdZKbgyzsuxo3aWzo6oZlfI3j6 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jul 2018 02:11:10.5006 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0829ba04-ea37-4547-82ab-08d5f366394b X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0501MB2041 Subject: [dpdk-stable] patch 'net/ixgbe: fix tunnel type set error for FDIR' has been queued to LTS release 17.11.4 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Jul 2018 02:11:13 -0000 Hi, FYI, your patch has been queued to LTS release 17.11.4 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 07/28/18. So please shout if anyone has objections. Thanks. Yongseok --- >>From d05de9eeed2675364772bcf8bcbd77c214578208 Mon Sep 17 00:00:00 2001 From: Wei Zhao Date: Thu, 14 Jun 2018 16:17:28 +0800 Subject: [PATCH] net/ixgbe: fix tunnel type set error for FDIR [ upstream commit 876b450ed99d2c96c5b71360cc84f7b0b8f506f4 ] Tunnel type format should be translated to ixgbe required format before register set in FDIR cloud mode, Ans also some register not useful in cloud mode but only useful in IP mode should be set to zero as datasheet request. Fixes: 82fb702077f6 ("ixgbe: support new flow director modes for X550") Fixes: 11777435c727 ("net/ixgbe: parse flow director filter") Signed-off-by: Wei Zhao Acked-by: Wenzhuo Lu --- drivers/net/ixgbe/ixgbe_ethdev.h | 5 +++++ drivers/net/ixgbe/ixgbe_fdir.c | 19 +++++++++++++++---- drivers/net/ixgbe/ixgbe_flow.c | 4 ++-- 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/drivers/net/ixgbe/ixgbe_ethdev.h b/drivers/net/ixgbe/ixgbe_ethdev.h index 51ddcfd4e..762f1ad34 100644 --- a/drivers/net/ixgbe/ixgbe_ethdev.h +++ b/drivers/net/ixgbe/ixgbe_ethdev.h @@ -123,6 +123,11 @@ #define IXGBE_5TUPLE_MAX_PRI 7 #define IXGBE_5TUPLE_MIN_PRI 1 +/* bit of VXLAN tunnel type | 7 bits of zeros | 8 bits of zeros*/ +#define IXGBE_FDIR_VXLAN_TUNNEL_TYPE 0x8000 +/* bit of NVGRE tunnel type | 7 bits of zeros | 8 bits of zeros*/ +#define IXGBE_FDIR_NVGRE_TUNNEL_TYPE 0x0 + #define IXGBE_RSS_OFFLOAD_ALL ( \ ETH_RSS_IPV4 | \ ETH_RSS_NONFRAG_IPV4_TCP | \ diff --git a/drivers/net/ixgbe/ixgbe_fdir.c b/drivers/net/ixgbe/ixgbe_fdir.c index 32720abc9..cbe2d6ff8 100644 --- a/drivers/net/ixgbe/ixgbe_fdir.c +++ b/drivers/net/ixgbe/ixgbe_fdir.c @@ -800,8 +800,17 @@ ixgbe_fdir_filter_to_atr_input(const struct rte_eth_fdir_filter *fdir_filter, input->formatted.inner_mac, fdir_filter->input.flow.tunnel_flow.mac_addr.addr_bytes, sizeof(input->formatted.inner_mac)); - input->formatted.tunnel_type = - fdir_filter->input.flow.tunnel_flow.tunnel_type; + if (fdir_filter->input.flow.tunnel_flow.tunnel_type == + RTE_FDIR_TUNNEL_TYPE_VXLAN) + input->formatted.tunnel_type = + IXGBE_FDIR_VXLAN_TUNNEL_TYPE; + else if (fdir_filter->input.flow.tunnel_flow.tunnel_type == + RTE_FDIR_TUNNEL_TYPE_NVGRE) + input->formatted.tunnel_type = + IXGBE_FDIR_NVGRE_TUNNEL_TYPE; + else + PMD_DRV_LOG(ERR, " invalid tunnel type arguments."); + input->formatted.tni_vni = fdir_filter->input.flow.tunnel_flow.tunnel_id >> 8; } @@ -1030,8 +1039,7 @@ fdir_write_perfect_filter_82599(struct ixgbe_hw *hw, IXGBE_WRITE_REG(hw, IXGBE_FDIRSIPv6(2), 0); } else { /* tunnel mode */ - if (input->formatted.tunnel_type != - RTE_FDIR_TUNNEL_TYPE_NVGRE) + if (input->formatted.tunnel_type) tunnel_type = 0x80000000; tunnel_type |= addr_high; IXGBE_WRITE_REG(hw, IXGBE_FDIRSIPv6(0), addr_low); @@ -1039,6 +1047,9 @@ fdir_write_perfect_filter_82599(struct ixgbe_hw *hw, IXGBE_WRITE_REG(hw, IXGBE_FDIRSIPv6(2), input->formatted.tni_vni); } + IXGBE_WRITE_REG(hw, IXGBE_FDIRIPSA, 0); + IXGBE_WRITE_REG(hw, IXGBE_FDIRIPDA, 0); + IXGBE_WRITE_REG(hw, IXGBE_FDIRPORT, 0); } /* record vlan (little-endian) and flex_bytes(big-endian) */ diff --git a/drivers/net/ixgbe/ixgbe_flow.c b/drivers/net/ixgbe/ixgbe_flow.c index 13cc121c1..e60ecce77 100644 --- a/drivers/net/ixgbe/ixgbe_flow.c +++ b/drivers/net/ixgbe/ixgbe_flow.c @@ -2371,7 +2371,7 @@ ixgbe_parse_fdir_filter_tunnel(const struct rte_flow_attr *attr, /* Get the VxLAN info */ if (item->type == RTE_FLOW_ITEM_TYPE_VXLAN) { rule->ixgbe_fdir.formatted.tunnel_type = - RTE_FDIR_TUNNEL_TYPE_VXLAN; + IXGBE_FDIR_VXLAN_TUNNEL_TYPE; /* Only care about VNI, others should be masked. */ if (!item->mask) { @@ -2431,7 +2431,7 @@ ixgbe_parse_fdir_filter_tunnel(const struct rte_flow_attr *attr, /* Get the NVGRE info */ if (item->type == RTE_FLOW_ITEM_TYPE_NVGRE) { rule->ixgbe_fdir.formatted.tunnel_type = - RTE_FDIR_TUNNEL_TYPE_NVGRE; + IXGBE_FDIR_NVGRE_TUNNEL_TYPE; /** * Only care about flags0, flags1, protocol and TNI, -- 2.11.0