From patchwork Tue May 8 12:20:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raslan Darawsheh X-Patchwork-Id: 39460 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: 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 7C8527EC0; Tue, 8 May 2018 14:20:29 +0200 (CEST) Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0045.outbound.protection.outlook.com [104.47.0.45]) by dpdk.org (Postfix) with ESMTP id 40B537EB4; Tue, 8 May 2018 14:20:27 +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; bh=lUS5iP6MA9QLxz0TAFETnc9w4gpG6arNrpFVyolgCZM=; b=NBhDD7GMFeZ11XmRtUYFONGJu7ho8VX+As+0g6lA/uN/FV9u3eLWgOXXsy+5Ans5COPVpijZ9Xhg1ZJbKOWHIhNWnSlyO8AxX5qM50l08BWill9+vrY6IY2kJ/9GWtJnFhaPBfHBh5aRcA/syOJ5VnNRM+jVNcGeqoo2iKmrBpA= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=rasland@mellanox.com; Received: from mellanox.com (37.142.13.130) by DB5PR05MB1256.eurprd05.prod.outlook.com (2a01:111:e400:51cc::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.735.17; Tue, 8 May 2018 12:20:23 +0000 From: Raslan Darawsheh To: gaetan.rivet@6wind.com Cc: dev@dpdk.org, matan@mellanox.com, thomas@monjalon.net, ophirmu@mellanox.com, rasland@mellanox.com, stable@dpdk.org Date: Tue, 8 May 2018 15:20:13 +0300 Message-Id: <1525782013-17527-1-git-send-email-rasland@mellanox.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-Originating-IP: [37.142.13.130] X-ClientProxiedBy: VI1PR0802CA0011.eurprd08.prod.outlook.com (2603:10a6:800:aa::21) To DB5PR05MB1256.eurprd05.prod.outlook.com (2a01:111:e400:51cc::14) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:DB5PR05MB1256; X-Microsoft-Exchange-Diagnostics: 1; DB5PR05MB1256; 3:E2OHTGrJs0h98rITnb3MNERf573/mVgXfzhP7grYWeXa5sTfH8EpvXk7hkND6fzXdmVFxeq4Y7IvtmxdZOu0LJ8ROoDM6QkgSTxrywqcoQccL46+E5k4TzsL7+NxNEtFuYDsb73vGqj+vGzEptTvFsa5acz6PFPPqkhH9u/Ta+gfVq+0niTzpd//U0auyK0kegtimw5Ck+W8wP65Hj9/JSM3OSVzgtJWv065CpFZl6NtNSou894W2usGKAR8+twf; 25:nnACQwXIQ2dRveFG+dtexBF0RUuGhI6vSp9+NglQ0DFcogcYlMRmd3kiTPCO2zsGQ+MfEbiezRyvaBuomR+9Eq2pyFnZOhSj0YoIpTwFqRfmiioM5r1l4OzLXwEj2dgRZ+a7axslefvYpgBcVTpFq/medM+NhwCuFVH2if8XWIkLQm8ktk0433IZ4oRPZhD2BUmP3D1TiXHZx+lGh9CbkStZH9xq7DgStYGb1Dd55FnId47HUxFfndXPMbc2GxOOVXJcruz8dZEDfIFlIFMsnsynXL1tizt2L4OpVw8tuX9YR1AX2MRfELg7dbcSSfk5vCf3QMWBGd2ayt/orkWyDw==; 31:yE4vOImsRfwHto/mbKQNLSiiHekh17oXoKL12lEr9ypJ2ckDw/FmBT6OzOXuF1lPajU+MGUv/+zseqr/P9JTycJ9XIyUFK7ILLWr7LGissa66MgUvH7zoON9LSyPHAbx5G1hm2W3wgeram9LNPlktPIgEjEhwQTldslIRL1pxE1qNC7YFD92s4M1k3jG6mfKAqSAaeM0O6M8IN+Svy6VpBMtTVC3HLJRYhSkZ1G6Lj4= X-MS-TrafficTypeDiagnostic: DB5PR05MB1256: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; DB5PR05MB1256; 20:va/tYPxEqI7O1rbE0SerYUDhWzYCdrgV26NipiVZ+RenJ2D9Fq9nPDltrRdqgV1lzbsmzELZ+fDh3+RxaxfkktSiovZMerYmprYVYQ9Z3eET9lI/YBb26dumJvrcY2Xgy7YV+LG+SkcBd9JMLuqGO1Mw8RVrKcsUNG9gdnbU4VP9ppRcHISMkZVOYyWNrBTCZjN2H3OUUR/fsm+BNQGG/NiEsjjmD9B9vqs7xF/Lh1ZxhoFeItme4l5RAJ8rIrhEh3W+q59z/hezXwMm6cIBTu0m878MFh786RsXr4uLF6NXN6KhEbTlp4r3WAG4tQz7D2HaSlpvtj+0FDNkME/Xrx4Fg+MLX5Gp4WSHQrtorYg30S/uLmdaco+r8lntB7QLnDRCsdpPIMsz2+astiBTyIyaA+ZQ8t7KBafxjKTq4BQHZENXfJlv1GkXdJA4wL6mVLqJ8QIpzptyOje4yG+S31yENpeqntReaj+wV2yzX4KqFENLMPmoX0e3ZahnYkLc; 4:bA3KLqTeTQbH3IPCReyQgyMnkQ9b1PLHSBA6zUZqTjrVRG2XykHxtnJL8g26uat8TlMr0DbE6tgrWbNaVdWYQ3742yPbTUMRf7bjgKVsEqBg6LJL1R7rKOYPuYawTq663St8GECBE0q4RXD3ZBcEBrAlm8Dr+eFFLK2OV+BTrLp6es4KPka2cDvdFPwQAeSrotyi/7j8ZLaBEOpLrVGAWG8hpUJKHL3O74ZxoiiN+oXdeOjGkKyN8RY2pD6YJBE4kc6Fl7a2N8ILPlhAobKhEg== 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)(93006095)(93001095)(3231254)(944501410)(52105095)(10201501046)(3002001)(6055026)(149027)(150027)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(6072148)(201708071742011); SRVR:DB5PR05MB1256; BCL:0; PCL:0; RULEID:; SRVR:DB5PR05MB1256; X-Forefront-PRVS: 0666E15D35 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(39380400002)(366004)(39860400002)(346002)(396003)(189003)(199004)(2906002)(86362001)(5660300001)(69596002)(50466002)(33026002)(55016002)(3846002)(386003)(486006)(21086003)(4326008)(50226002)(6916009)(36756003)(6666003)(476003)(186003)(16526019)(81166006)(48376002)(2616005)(8676002)(81156014)(26005)(97736004)(8936002)(105586002)(16586007)(68736007)(106356001)(7696005)(7736002)(2351001)(305945005)(59450400001)(51416003)(2361001)(53936002)(47776003)(316002)(956004)(52116002)(6116002)(478600001)(66066001)(25786009); DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR05MB1256; 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; DB5PR05MB1256; 23:pvZ6dFvpxmgc8wHzE44+0fu8/LKTAmQ6WdYlb044w?= 0W7qjXnToO/huMT6FhT3VK0bGV+SJjcoyPpp4OdT+HQQ8xn3L+V97yPhNxF9WVx9TVBwStgPMsuG5KAdNaHTbmEhobVaodOy/46p2bOKOwFfzjJ5L/HtJ9X0lpn71qjtCs9OfdlSVeqO0zUvjBFzev04DksapRd+PzSrmPp/EmF5FjVlwvm7ZyEk40CXFzy9cq6GaUlg5DXYXzCsgpeBxQTyKQRVNvZgfe8A7W2Mz0wLnMnFROl32woCoRovV8gXIUk0UuHdhw1Gl7+ExjdoLLLa/wDbLM8mmwiXysmgNJdVutJe98Nbr4pZUZOW+IrYnzXsmh1Bg7QVnVsG2pLgQbP+u6QHMrrW4NaGoxpqAAHYrSxAsFDLiZ8FPkrqvcshxQOuA4DoR+/A/zYZMYh48HUzkSn+DO8pHLpMBVQP0flFNFRC8xf0D1u3hhUiGqiaNE7DtdDV5WA1rjQfFEy4c5/rbrw7/P9HCpBgDnfpd/WKMMVHLBIPwD2KhhsT8w0LzL1DrU5gcw8Y8YbAf5vDk74h8CORQlN85voUtUhvJ6zueDEMCxkrQr7Qs6S75OyMX00cs1GqEidbkgxRd/ddmTaC3iLmkiVgVRMlwdIXA1/kjgfyxWedkVKqvfxPlaYbaHTI4gLkpBrk92Rh3YfW+kfuWzqXIp0tRZ+5iiQQBEaofWCPVJwTrBFdTVpBl70JW/KHcdSGgeqw2YM6Hzg/KmHOHh1few9NeA3AuoQ8lIleAwRMwF0POE4xAhn3MlBgGi0wRdO5zDMmrSitsL8CI/Yo3tTQcFMR+5JC2UAHFNJSJQmxZUZX6+04Dj7nyiWWoppLXG+/Kok3HIXuAPGHE//OrjRJqRmzwymxSwuK59jpWyhNBxfhlGqaVQvSjUYLRmWg1+Rm+mJf5bZxFDl1WnP9JZiGwtBAhkCBb3tbUtvz4HkFLvnaJtW6+6OoupKp5s5RnFAC34dGpH0NsWIbP+d21XLjep+l6cN/BIb0dimRivTUGk36wr7cBrYFErX3JCkZeD5G1eq9jeBRzojA4ZGW4zBr85fn+6l6OX+9nOO25YOvAnaL9xFX5OGpqwnJvZ1ND9xtWfU1eBOdxNSbHsEJWmPiAs4ZxQsM233VUWVgOWn3pZI6jVcvZKrfPfR2WIsl2m91XoVtADyLhRlZAXHtGi8O+rspY6AGeWq61o+2g== X-Microsoft-Antispam-Message-Info: j7ldQSAQ0U7z+WLk0pfxcZVQio2/5FZSGhAi4Z70ZjKdRq2thRQ1ZeOmHGHPeXMfwDFMoPi/Kh8za2aykiE9NlnqJj/KKFCb8sj8mI2gQf3y/3QW51FgKdTfrLyGutcY3MayZ57Igalxr1cGXdwWIQcdShI2OcVuHlQATcbndD/JDIcI8y0m/Z6r2esvTH3m X-Microsoft-Exchange-Diagnostics: 1; DB5PR05MB1256; 6:PQCPnT4fdafuir5iLID8vbCzvY+rYChKQH8lXJl7DZo4SIE5VfIhQSGdOuf5frAp/9kUUmF+EMVBs9Nmf7Do/m5UwhquBUecCrBAVnFCjo1gFWgZBqevqcus1sIEW4HTLqE4uylm4bxvB2PJ6kTv3E+FPH251XesC1uvsXTssLsyQ790sW/qGe/yC+6H6V1s+/lGIEplcsvDa4d5UMx/aQXQ6QG/gKpBie0rOp24iRgHF0jHZVX4khMLlX3nDfK/8ZUlp1/b3N3OV99eQD5CKX0MaJgni1lCdRf/m24lxeRV33rkZUuAFtpvV1bXxnuWYT/gIzSsQCVgVqLd/lUm7XYjZ+nyFUwpzJzYcRHhtnADxqoLJa2cGBLjJ3HypCHPAP8iq2pFwBNSiGgmnkFj8M2E1EuYE9r1ou/8sZCYImGEGuJUJbhUarQC9EOo1dbR2o/+vuvKWm81o5lGeuiThA==; 5:L1zncsxpSdoxMj2Hsd7ukK+z/fsXZfo7e6dZpgfp4RfqTpSkJ7yvqiFwhPVLDstCn66KlMPuPcdpWkqZglsRYUlrVIEvk7XUp4X5uGsCt4GxNjHO2t3h2NPSNcw95HMKPqVoQHN2i8DkMHtbD0psdBYLh2KZZn276yywqN2NBJ4=; 24:m2TZN3f+97s3khP3ivr933vu4Y6DRpabHSYwm1F9TRUxGpECtv2gCrhXS5yfbJp3tTUDJHbMdRAkD2gM4wwapI0S3HYU8LejmKrJxhNHhZk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB5PR05MB1256; 7:FcfZAOeTdb3GgvVPVd+UekkElHrLJMao0KbsezDfUJQWaQatM891C1vYW6kYlOVMl8oqMwhNKUI8JZZ8IhjGa3xkQ1SXbHpRm4PYW+fwNQjKBNgqfGsT8gcQPRRtaeRE4Iy3DDiP+AeQNcx7WK+VLvKrrzORN7gvWiPgOauvyDfUWNOXxol64EDJ5KnroyIOTlIQDRsUsMcaZ+2PYCOJ0h3pIVKL5ynvz4jswp5s1mBPjotu/KUINP6XwVM7hv0U X-MS-Office365-Filtering-Correlation-Id: c19c3b90-3781-464f-3f0f-08d5b4de13ad X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 May 2018 12:20:23.5684 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c19c3b90-3781-464f-3f0f-08d5b4de13ad X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR05MB1256 Subject: [dpdk-dev] [PATCH v3] net/failsafe: fix probe cleanup X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The hot-plug alarm mechanism is responsible to practically execute both plug in and out operations. It periodically tries to detect missed sub-devices to be reconfigured and clean the resources of the removed sub-devices. The hot-plug alarm is started by the failsafe probe function, and it's wrongly not stopped if failsafe instance got an error. for example when starting failsafe with a MAC option, and giving it an invalid MAC address this will lead to a NULL pointer for the dev private field. Then when the hotplug alarm is called it will try to access this pointer, which will lead to a segmentation fault. Uninstall the hot-plug alarm in case of error in probe function. Fixes: a46f8d58 ("net/failsafe: add fail-safe PMD") Cc: stable@dpdk.org Signed-off-by: Raslan Darawsheh Acked-by: Matan Azrad --- v2 changes: Reword the commit log. v3 changes: Reword the commit log. --- --- drivers/net/failsafe/failsafe.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/failsafe/failsafe.c b/drivers/net/failsafe/failsafe.c index 5e7a8ba..3a747c2 100644 --- a/drivers/net/failsafe/failsafe.c +++ b/drivers/net/failsafe/failsafe.c @@ -226,7 +226,7 @@ fs_eth_dev_create(struct rte_vdev_device *vdev) mac); if (ret) { ERROR("Failed to set default MAC address"); - goto free_args; + goto cancel_alarm; } } } else { @@ -260,6 +260,8 @@ fs_eth_dev_create(struct rte_vdev_device *vdev) .type = RTE_INTR_HANDLE_EXT, }; return 0; +cancel_alarm: + failsafe_hotplug_alarm_cancel(dev); free_args: failsafe_args_free(dev); free_subs: