From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0061.outbound.protection.outlook.com [104.47.2.61]) by dpdk.org (Postfix) with ESMTP id 1CA1D397D for ; Tue, 5 Jun 2018 02:42:11 +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=FLbEkkdSdLfPcXT397jwZqIYg5wtFq4mRooLipOuPso=; b=DCEbKtOnLPCoTrt8bVxg05NFYSUBWPKtesnJnHWBHwT2Fu9koTzvwjyOhrHIkkNdvdR550xwigDOCFNnTMMjFkTTharptJk1VyfcRvJXiQ6TtQM3I5+x+lUlvEButSeL3orAplmFRszrrv/EeUAW3IFiCj9rcyY7luQCHHV0yXg= 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_GCM_SHA384) id 15.20.820.11; Tue, 5 Jun 2018 00:42:08 +0000 From: Yongseok Koh To: yliu@fridaylinux.org Cc: stable@dpdk.org, shahafs@mellanox.com, adrien.mazarguil@6wind.com, nelio.laranjeiro@6wind.com Date: Mon, 4 Jun 2018 17:41:35 -0700 Message-Id: <20180605004139.14660-4-yskoh@mellanox.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20180605004139.14660-1-yskoh@mellanox.com> References: <20180605002732.13866-1-yskoh@mellanox.com> <20180605004139.14660-1-yskoh@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [209.116.155.178] X-ClientProxiedBy: CO2PR04CA0088.namprd04.prod.outlook.com (2603:10b6:104:6::14) To VI1PR0501MB2045.eurprd05.prod.outlook.com (2603:10a6:800:36::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0501MB2045; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2045; 3:1msUfi6QoxkZkXOFHz9Vjyji8dQWYi9GpQxygae05Rjpc9oioattsL7nLzqaN9P7Ctvlx+lNXT7Ryg7LdX5vbgKLK146UkGcF0YxSMnKNrwvuflGp0DrEkKddS7LO10VG9WU1gml7C1+eRHMe+QIz1jhBkB8hu67d/od8kk023MXK6L/0AJHIVXWkRSeHLK9ZkKwb19nTzy6/NkowMCoTAbUmP32Y0dKXEjZOzlQHhdSNd0bRlWx2eqfglr6O2Um; 25:4YhJZ514VOJy+9xiWQ9UEud1nr9yJheU3HiL5W3MDieXzsWRoESgd0IaXfxcs92EmMPnckCdekkYyaJb68MMNVduZkIcu1c9sic3+WIqqRNkDoXCJ7Su2LEzIWlNJd6maCBAtjIdqSqKLucSsoxyLQuGOF3ywuaqnTj15iImuII7iYAXfHZyvbOoNBUyBvIaKHcLaiiKG5FPt4CDFZJYtmwptiyu7VDXY2TZ5joddLI+TLZOwa7ofPjC8fAwivSqqEcKiSiqlbkMU2sVYAsnEfImSyqmJ2EE3ZuHHe7tF4q/UdnOEavdrNph+CDUG6pXYQDEZb3KVbAGqPbKzK/k1w==; 31:0HYh5IbN80XAFv7alvZBwm25x5g4K6Bda0THD99EPiW9NX8RXICa5b6HzmC8m1J7yprHmHQCG1vyjJuM0ejSRn+ScQoD7CLE4UWFF6/p4/7D7qZN//ecffKNw/zF3WuUolonPo6XmkT44k1kG2qdDaSQUqxBxJ4DpAeaJZ1hVZb43fiY9WB6T8ZLxBu9NRMyvAsrlqvk5XsrHygv1C8bCnuwAlR3Ua2CelvwUTaFMvg= X-MS-TrafficTypeDiagnostic: VI1PR0501MB2045: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2045; 20:GvfaT81PAIFXssdPgykDFjMoNorcyHoTQRwN/6So0YS4UyvQo9bHA2/KwR97ErMH6AmxVHTxI9khXhZd1xOuzuszoIDDC0lm+PwTgd74pkcEsfPaKcZMiLnjUQ8bxa78mbhuAGHfsLCJkPgYAbCYaf+SIuAwtiHIQ+XgXPsPWHl7V2jHV9RJbYoWtwJqhJRRC8ktRClhD7b2YFKK6AQmKB0zld4IOAp340jpWGvOYqcaxyiTVGOaNIIozzPYcnMxHWPqEPIFWbcTGRwPhQkq88CggI4m/jD+wrswaLnLqZEXZTVbKY8rniHYSShlosopd2D+qMxXktTqe3UKmq0dEeI8jr5oOTdSxxqyDEvj8MWF2v2vqeNxygJ6XB38PYKeKz2UcNJzVsRh79y9CJmjdF0GIMvZCJHoF3SBwGKSGJlyYnF1dj5iGtPgsTcRpAxTBDVnT4JV9CVtkP5DiA74vllh8YgojmfC9E+y9KTuYWkj5fbGPcmGgM2LSBm87VSL; 4:R2mC5Uj5+cQzsfiOCh+zNO2+XpvlQUxZDHYY9xMRj/256WDelyQpqQwzp32yorCQc1GzbX+03FDJ2zgqNcG+yHTxbvvTrcjEdPrreKR09zXjipIb1VoD/L/gCxT9LDwwhXSE3FFtCo+V08rmjJHdygnmqwJsfK/Vn7+eLSwP5B9u+Q5ui0CDTISG8ZW8EoAHk54Lo6MftQHeQ9jPbBU/RICpwlxeV1zRqahKrCkfjERyNx+CoZuays7x0I70S7t3rDpNToVrs1elJv8d+UaIuQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(3002001)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0501MB2045; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0501MB2045; X-Forefront-PRVS: 0694C54398 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(39860400002)(346002)(366004)(39380400002)(376002)(396003)(189003)(199004)(5660300001)(8936002)(3846002)(6116002)(6666003)(2351001)(55016002)(97736004)(7736002)(305945005)(8676002)(48376002)(68736007)(2361001)(6916009)(2906002)(575784001)(86362001)(81166006)(81156014)(1076002)(50466002)(53936002)(47776003)(446003)(16586007)(36756003)(105586002)(2616005)(486006)(316002)(956004)(51416003)(69596002)(52116002)(7696005)(11346002)(386003)(476003)(59450400001)(50226002)(478600001)(66066001)(4326008)(186003)(21086003)(25786009)(106356001)(76176011)(16526019)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0501MB2045; 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; VI1PR0501MB2045; 23:pcIhBVqD81E8pNj6TFZR01iTjFlCvei4qNH4GPy?= =?us-ascii?Q?7TUuM3IKkwNpWlzkKhzUTP/7WfEIWe1iEWpdbyYnAXCmYVud8PC8QqmgNusU?= =?us-ascii?Q?wlbewdxSxeXvg/bQduZjJdTn+D08NIQYbt1IJIIGuDpMuWVs+Ki0gJe9cseD?= =?us-ascii?Q?NaygCDnGuT92Qn9aJF17YTlHWcGjGlziua0mVeqUNjQjQOjWoYyFwvDWww6R?= =?us-ascii?Q?DI10FvsdJQalQ9j58ViXrrjxgNE9rEdnW+0pr2lK5JCs9aNtwPUmYTu+85qp?= =?us-ascii?Q?zf/db9WFv32IayRVOg2zjB+3OAQc3JiEmbi3C3DHyd/tYD4LULV9qi5+VK5t?= =?us-ascii?Q?YLDxZTkPCRH/V1odxzfbkRAeNhHMbV/hjEohKoZ+4jD9Z497Pd9iLUcS4yKh?= =?us-ascii?Q?y20K45o8YTBQKHegNHDA263gQIW/zKh/gRX1jooTebIzyxV4aQYbQyClBoke?= =?us-ascii?Q?Hoa2Ulko16ivnaSktxPBEP1R+sMx9NM+HwZ+UT0vAi+Rt6wyKLh3vCxXfCnk?= =?us-ascii?Q?WOqtpTeAb5q+fNahNpXHwa7PcYpxbdn1Gsm+qOc5oapXj1JOkzZES4fazRsz?= =?us-ascii?Q?8yCj6717faUqTi5Jo2ZhgdpInTQPllAcieSlmNjbdZS3wEjxbBb/mevrcl9Q?= =?us-ascii?Q?U2zJgtIwkQgYw658+IsNYNXB6k8C+mksw/JjRUI7sMijrw3bNhvbzgGvOU70?= =?us-ascii?Q?sjk4ikGcQ63ieFMBmS7Ss9yJ6c5APh9XV2mTJOCNVuEbRTHI5HgHHnJULPL4?= =?us-ascii?Q?gcATWbR3ej5qeup64i4JLqgLzhVBs84qir9jmWms2LdlMgZqd8AxeHTUdHl2?= =?us-ascii?Q?PBFuuQSuzGxOMBxnZXMV4NS9d4zG1ejNqaja8boHDonuNfmrZ3oFClAkjiWm?= =?us-ascii?Q?yw6pkoXwrRjsZZK42Y7UoU5THzlZJ6tlU/+IRLUYxmp9RBq7hejkpewTDR0j?= =?us-ascii?Q?69juszilutrfAj/lgmOc1OMJm3mcAd3N0ilHzG+OfLuYBG6ZzYQ63v4TwalE?= =?us-ascii?Q?XlVmjZMhN3nAEwvOEtXl3NyXMwqRvdzXBb4IiptKv/CKseXJRyiDivcyZpGU?= =?us-ascii?Q?WvoqWcXE//xlB2BFETXfIET/E5URWZtHU2iHurABSUkDm3RR6ILSd6PD19/Z?= =?us-ascii?Q?y3X9LNv0mxNjNhaxwB7jyvLzmFaazyXXdaTPJFUNXEF2gaoulNTB2g/+Xz+K?= =?us-ascii?Q?pAXcvWgv33yauRVwfA4qb6zT7bbWgusKQ2+j/sc482LiRfMgE2CWhc3zFAnj?= =?us-ascii?Q?ozVBGJyYm2Cbyp/L2B5ba7hTT188tcGznkmspR1/GbUuqFzok6+5erp0IMzu?= =?us-ascii?Q?JT5s3zFHah55Fmc1eCrPULc8=3D?= X-Microsoft-Antispam-Message-Info: 0L6YelxYSaSnbYbkQMNQk7usKxZcbOdCXX1VmoI+3a+3MOW9DzOhVUpg5t7pFVvSyToTFLAZGdQEXT+ndjnhBJ0+AqYNBtoKFfFW8RgHXVDlbcwf9857RcXhYe6aMQYz37lD/9AP3hNOMsFE32y4zsIDHGA5MUOueaOSRbnrz6yTeGKb2v+FozqpoxEI7CiN X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2045; 6:vNAwS0g6e1ZzmZ3MiXVqeVbwbQRCYhC9cRUVSDdKtHrrbDETJslq0h2V9jg+wkwbJ2xuLgu3j03mL0PRqumwHJRbT6g7xTEDFTph6SgjS/CaVXuXq2JjXNcTOL3EPtSVXeePBc6jX5txi6gR/jUHgWyMZ+DbdaxoW7zVCGbwHF1+wDozy/xgx5lJUSNbNlm2LRLNtvRTnCxCp/VJ0iCJUrnq42RX3Qs1IkdufqLcnJMIM+MFBeTAF/f3kcsZyq8QdejxiWp+ZxRrusHrPTFJ9d1vtFJ32yCqsmqMEE2ufhxJVhSC3TzXlUMnNz9Kp3I5ZXZnVma8YSaV3tovHNc+3gSx16OLfrRTFcUt2EklKwh7yiPfNUuBcvGCA9+aRWOW82rEzP8PqTOK0cVMIr0lmhvlvyZucj0mrBAaaJyqI+onQhe4xgLNQtAZG049RyQLH8kxHpoegCJd8gWz2Eox0g==; 5:AU6HKWVVSwXHrC5TgHOoHXC7PWmB+OwpYmCQiZrovXHb00QlvuOEZjU+Cenwn4UTNvwP+E/79RAfbJ7J+uUZMgivKtH7YyR4bQSpldlIQyIfPP4/Ld0mdoVsxvbDkKNZ34jxBOxoeOYMBGmTYZH7fCr60zprZnzk84Etuqc/ZBQ=; 24:Dti7qpcJEyQK07NX8gEBRuG/NqIqGb1IlKCEUYTw6M2rWxhvObzqlzZA00O4lglqlSBWf24vWTySrgZtFHp/4I2J+rjHBwxbZBI8DcUve+8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2045; 7:rUTzUkmzq0RynqZozaHnFHrc9aZGvJ+bxOKMFsee0RgHNc1yRug5wd/YbLfCGZAtQI/GC62asvWeDh2PuAdFNIr1EALjoJrnGB2s80v/9oXWoNWg8JteoJGxTSh/gFRbBBvI9t/cQBC3vrlyJkSnJobGJHv8C0j7AmZxFjez69pOpR5vY4UfTls5g2YmNQ5eZ3Ktb/Cd4OIAPDXAMo01KVcCx7olZWOAS3i+er1DvlN5RkZT/EMRsv+I5wtR/Cut X-MS-Office365-Filtering-Correlation-Id: be405520-29d7-434f-a803-08d5ca7d2c15 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jun 2018 00:42:08.7288 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: be405520-29d7-434f-a803-08d5ca7d2c15 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0501MB2045 Subject: [dpdk-stable] [PATCH v2 63/67] net/mlx5: fix flow director drop rule deletion crash 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: Tue, 05 Jun 2018 00:42:11 -0000 From: Shahaf Shuler [ upstream commit 8fe576ad17a6f091c100dc1c61c11c5fb857f864 ] Drop flow rules are created on the ETH queue even though the parser layer matches the flow rule layer (L3/L4) Fixes: 6f2f4948b236 ("net/mlx5: fix flow director rule deletion crash") Cc: stable@dpdk.org Signed-off-by: Shahaf Shuler Acked-by: Adrien Mazarguil --- drivers/net/mlx5/mlx5_flow.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c index 54e0dbc57..271c71e01 100644 --- a/drivers/net/mlx5/mlx5_flow.c +++ b/drivers/net/mlx5/mlx5_flow.c @@ -2926,13 +2926,13 @@ mlx5_fdir_filter_delete(struct rte_eth_dev *dev, if (parser.drop) { struct ibv_flow_spec_action_drop *drop; - drop = (void *)((uintptr_t)parser.queue[parser.layer].ibv_attr + - parser.queue[parser.layer].offset); + drop = (void *)((uintptr_t)parser.queue[HASH_RXQ_ETH].ibv_attr + + parser.queue[HASH_RXQ_ETH].offset); *drop = (struct ibv_flow_spec_action_drop){ .type = IBV_FLOW_SPEC_ACTION_DROP, .size = sizeof(struct ibv_flow_spec_action_drop), }; - parser.queue[parser.layer].ibv_attr->num_of_specs++; + parser.queue[HASH_RXQ_ETH].ibv_attr->num_of_specs++; } TAILQ_FOREACH(flow, &priv->flows, next) { struct ibv_flow_attr *attr; @@ -2942,11 +2942,14 @@ mlx5_fdir_filter_delete(struct rte_eth_dev *dev, struct ibv_spec_header *flow_h; void *flow_spec; unsigned int specs_n; + unsigned int queue_id = parser.drop ? HASH_RXQ_ETH : + parser.layer; - attr = parser.queue[parser.layer].ibv_attr; - flow_attr = flow->frxq[parser.layer].ibv_attr; + attr = parser.queue[queue_id].ibv_attr; + flow_attr = flow->frxq[queue_id].ibv_attr; /* Compare first the attributes. */ - if (memcmp(attr, flow_attr, sizeof(struct ibv_flow_attr))) + if (!flow_attr || + memcmp(attr, flow_attr, sizeof(struct ibv_flow_attr))) continue; if (attr->num_of_specs == 0) continue; -- 2.11.0