From patchwork Mon Dec 4 22:45:09 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Madhani, Himanshu" X-Patchwork-Id: 10091715 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 49FB6600C5 for ; Mon, 4 Dec 2017 22:46:06 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3C6C829387 for ; Mon, 4 Dec 2017 22:46:06 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 310AF29446; Mon, 4 Dec 2017 22:46:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C09B129387 for ; Mon, 4 Dec 2017 22:46:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752457AbdLDWqF (ORCPT ); Mon, 4 Dec 2017 17:46:05 -0500 Received: from mail-dm3nam03on0079.outbound.protection.outlook.com ([104.47.41.79]:26759 "EHLO NAM03-DM3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752436AbdLDWpr (ORCPT ); Mon, 4 Dec 2017 17:45:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=zy5r4T630SoW9qwgWBx+5Z53NVfVD+ODTQynJ3tulgA=; b=KihFChJ3+WSOeYfS7WYAhnsVLqF8TPaelTmaGz4AilKsNipeFXAoKDfbvPc5jSaPb0wsksAY2a7gfc+hH2TxlBoMqV8tYCX69UfPjLD1ToMGVruPEZknY6dy7a2eUXUJr4K1Esn/vAp93KcDRHItXF9k9VIcUvlO4woR1+VEjng= Received: from CO2PR07CA0066.namprd07.prod.outlook.com (2603:10b6:100::34) by SN4PR0701MB3824.namprd07.prod.outlook.com (2603:10b6:803:4f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.282.5; Mon, 4 Dec 2017 22:45:46 +0000 Received: from BL2FFO11FD054.protection.gbl (2a01:111:f400:7c09::184) by CO2PR07CA0066.outlook.office365.com (2603:10b6:100::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.282.5 via Frontend Transport; Mon, 4 Dec 2017 22:45:46 +0000 Authentication-Results: spf=none (sender IP is 50.232.66.26) smtp.mailfrom=cavium.com; vger.kernel.org; dkim=none (message not signed) header.d=none; vger.kernel.org; dmarc=none action=none header.from=cavium.com; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) Received: from CAEXCH02.caveonetworks.com (50.232.66.26) by BL2FFO11FD054.mail.protection.outlook.com (10.173.161.182) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.20.239.4 via Frontend Transport; Mon, 4 Dec 2017 22:45:45 +0000 Received: from dut1171.mv.qlogic.com (172.29.51.171) by CAEXCH02.caveonetworks.com (10.17.4.29) with Microsoft SMTP Server id 14.2.347.0; Mon, 4 Dec 2017 14:45:21 -0800 Received: from dut1171.mv.qlogic.com (localhost [127.0.0.1]) by dut1171.mv.qlogic.com (8.14.7/8.14.7) with ESMTP id vB4MjLwg003501; Mon, 4 Dec 2017 14:45:21 -0800 Received: (from root@localhost) by dut1171.mv.qlogic.com (8.14.7/8.14.7/Submit) id vB4MjLlq003500; Mon, 4 Dec 2017 14:45:21 -0800 From: Himanshu Madhani To: , CC: , Subject: [PATCH v3 14/22] qla2xxx: Fix abort command deadlock due to spinlock Date: Mon, 4 Dec 2017 14:45:09 -0800 Message-ID: <20171204224517.3409-15-himanshu.madhani@cavium.com> X-Mailer: git-send-email 2.12.0 In-Reply-To: <20171204224517.3409-1-himanshu.madhani@cavium.com> References: <20171204224517.3409-1-himanshu.madhani@cavium.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:50.232.66.26; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(346002)(376002)(2980300002)(428002)(189002)(199003)(72206003)(106466001)(36756003)(86362001)(105586002)(2906002)(16586007)(110136005)(316002)(76176011)(8936002)(356003)(8676002)(50226002)(54906003)(305945005)(81166006)(51416003)(33646002)(47776003)(81156014)(42186006)(1076002)(189998001)(5660300001)(50466002)(4326008)(478600001)(87636003)(48376002)(69596002)(80596001)(6666003)(2950100002)(101416001); DIR:OUT; SFP:1101; SCL:1; SRVR:SN4PR0701MB3824; H:CAEXCH02.caveonetworks.com; FPR:; SPF:None; PTR:50-232-66-26-static.hfc.comcastbusiness.net; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD054; 1:cR2H+YweouT4GTtfyIY7iNekQQkMahc500EmeMJog4B1nhaUJLjgz3jQCdQcfaoR1PyycbX3mgMwaS6BaMdBSAco7LERC7qmH/w7PkYffqA0MSoRa1mMNcwaYNdqYF/a X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d601161d-a753-4b22-2c0c-08d53b68c21d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(5600026)(4604075)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(2017052603286); SRVR:SN4PR0701MB3824; X-Microsoft-Exchange-Diagnostics: 1; SN4PR0701MB3824; 3:Cb/Mel0Ifhcl9fQFTzPZNE1HmDHAHlFOvLjX2enNS2deo/alrLak650n4fpcDGMZTnuLQj1UgmrKRzODydNkSBwGGGnDN1GYcXpeo4e3dYgeAQZfAca/259TLWftqAClJsfsx5k/IRiMzLDn3sZQIhsuHXb0rPCZxJo66O9aaS72M/Ijo+zsmy6pSNMp4e5qYo67GRWyXIk0MqrxYp2NK8wAIRwZVRL7yzkr6AGEOrTh2TfimlWTy7wmUkeQLKqJLHsPt+KJg76038UgHkDGS9X+TWsQOGvPXNXfhB6E0GrEtpsA/P1MUcDHn0jzcXaBZwIdSnplx3buDysPmG0lObr+K9oxXd8QhKFQHfCszL0=; 25:1CkqJMipYfLQ+UTQwPjLdWxVnopyylW+1sOEbqwfu8uqKTuVH4bZFQj2OY0Z9MhGOKsuMeXhtMeKHrhuyi+mlVzDEK56uUkC/jnY3felwkQdd7wpRVKnIG3bOWPASkgqM7Rr43cuv/CXMLgEZDMQdokX2LvfQxNkKtEVgfC4z0PO211yOIBRRiptWG4slqJ2z8o1j+tOg0IVlkXN5MMVtPSfeepvQO1L5pnIFCKaxMXzvRhvt0iewN7Pl+Npr8k9EgKSrBJNFm/8Sje9haofthRRWwekVP4ugDwEVkxzQyFwmh1XAE/GcugF/wvJHWC6FyixWlab1iUkWROKOnXnSw== X-MS-TrafficTypeDiagnostic: SN4PR0701MB3824: X-Microsoft-Exchange-Diagnostics: 1; SN4PR0701MB3824; 31:yMiN37zKHarL72xEmJjtnCfXZ29hKtGB1GvSgps9dRcJBcLzftjNqJYnoinN11QSPUQI4eUrRaDFdE7+jjlU/RX0yJFiXfpXalgLQCrc0H10+txHD6MqISW42+rji9zXr1cS2lgbx5wsLEn+fQefmQXsgM122xY9b4X2tDbtssJyrTPf3ajcmiFpk6MqAh0Zzi/YEraQOaT3qGMqA4GtL36inJyibIKQUv8aoHMvFMs=; 20:qG9bKV3WqlqsEbXr0LWdsaj5TRe6B3NnvifJs9JmZntKktAUJZErV+LaQ6N8tjDU5zw/zeJpgk0rujbuXatg5RkZWQOPwnlwG7Idb1O6zKK3ucg0PALSFv3zr6Wo+5jwy6rdOyb0g5EMH+RDlrRA34dbHpsOTRYiDBPv3aGeCXCRhMtko9oECQPGMgnl6RC8CGcBcCcoMOYXKxaFkUy4vuy15bGVuBHE46YGB2gZrYgyX4z51HSyzAwUthSt7ScVP58EWKSIOtIjlEQERKBFoStmLFIKZ/EHvYWkrF3gNWFIL5ntg9cf5qT2kMMa4TI2jhwIoBw5ZeH/2bB73qrSE6lxsWXMrHCqaxmUvFKlsURh3cMuLQVT2VdPDzKERWqSQ6EqRInPHeuZI4AmRJBwGjccIYPsfdLzAC5wb9K85hZWwJ7Ajh06b8AjRAkj1x1+bvbli0Zdt1awy8VcQ3BIFsw9aygZzfiNo9F94zzy3SnUYXRvXSgGYJQeQMWyfGxY X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(9452136761055); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(2401047)(8121501046)(5005006)(3231022)(10201501046)(93006095)(93001095)(3002001)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123560025)(20161123562025)(20161123555025)(20161123564025)(6072148)(201708071742011); SRVR:SN4PR0701MB3824; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:SN4PR0701MB3824; X-Microsoft-Exchange-Diagnostics: 1; SN4PR0701MB3824; 4:/hb6pNEhywE9Mpj24+ap/NklSluE8R2pZW5gOscazFkOdDlUOdpawOmLOI1NabIm4UTmi3si/XoNjrKgJ21r/KX6qqeos91mnpv9O2SpEWjr+RcHGBcwR2SnUjylAKSkyzJIKRg8a56fKTOcUkP4KWNDtiUAuthEdkXWH5EkC2tnofR9Ly5wjPyMNIcJj2RlkxOoDWmDajaEChH5ilYDlHn5f5jwk/hDYVkm72GoS+JmvkIvlI8KiXoO9PHw66TSVIYNkMWFiJ7e9P9IX/DUHRxuF5DfqTnSBs2d+KvRqY+ynh6BIntegjbdPmBSvVvI X-Forefront-PRVS: 051158ECBB X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN4PR0701MB3824; 23:X8XpP50vQJJwIu1eL9XEZKNDQzkbl7awzzsF+JE?= =?us-ascii?Q?9b2jCYUy5+iO3GmTlhem4rqjF15wZkae37grLp4mhgjo9Y/nOkiSbEWacDMi?= =?us-ascii?Q?bhXLCP3FWKzrXhVvBhDtHbCowBqgbrgf3c8e/U+jkwCzDyOlidTZ9JbVg25Y?= =?us-ascii?Q?Nj8gyCd72u0VW/6NKONGO0D7pboUy11gwf12h+muBKR/blva/HrRu13FBeW6?= =?us-ascii?Q?hfzvCA6e218tAAto6+7Ggzi9bMurYchTpE0RQEprK9buOV02OJOwSD+hRLNy?= =?us-ascii?Q?fzfk7JG29XkmWfRyvIef5OLO0RBvePj5nzD71wcIDGEbrJmcPqicgOH7lenP?= =?us-ascii?Q?7duzGrkjVczU70D9LnQcYq4XbODI4LR5PuQauXZh0NNOf+n3Tr9+ffbIVHt1?= =?us-ascii?Q?2/p9qo8ySZUJZKLrkPCzbdDNCh2du1QDjg8zj1nxpPWcbskhadwqxKi+OJBC?= =?us-ascii?Q?Zk12g5IFpuzcHT/oeZfkpyI/Ps0J9D7V/hRYfhHeERaCXD+cNYyaDxqlT/y3?= =?us-ascii?Q?1WEL7i28kewm42Wvis1luXoGb5Qm5z2u9taVfdf6vWew1Yo70+lIsm84ULyx?= =?us-ascii?Q?0QY7u77HXZQpXerfZ+PUSXknoKv14ZHKwVQwdRNFOJ9y/mp22HggBmlI+SmO?= =?us-ascii?Q?Q4tPhuO5c4eVlWB0/vSw+NO0wbK9wqAWibrVlKvvKr9soJxFl9801ob1ew1t?= =?us-ascii?Q?4YyL2SCovQ9Sg0K5YiTh6UhoezjOb4WNDIbZ/ygcNmJ9YjxYZ7epV5glVEqt?= =?us-ascii?Q?eaCgOyJ0XfnecByz5dzXfNLTsrrkL+NF6+OhdhFplLmwyNXTiFqWpt/YUeeF?= =?us-ascii?Q?BBqGd3Qm1qgAo8DxV/3SUHb9rIA+60moPp1Q5dl0i0RtEKFxawYBqLu3JBiM?= =?us-ascii?Q?ronKJziae8+gssJFHSwDjEnQt/Y9ldMzZt1kJLUAgG7ZA1q3QoXzrZG2+VOf?= =?us-ascii?Q?cMfJ8Melm/q3ZzBLTMeYFfE250NMZDUkt5Yd1YHOxL6B7/7or7Ab1SZLVIrh?= =?us-ascii?Q?0EXM=3D?= X-Microsoft-Exchange-Diagnostics: 1; SN4PR0701MB3824; 6:4JMDCihlwUyoHYWTnM6y52t3AtH0p1Uk6JeXwTb+qqcFRayTcxhROxjYi1VO/+DTLisJqRU3rQI8d0KrzQXrPqre84MkZCCyCpYAqPk4+ClftJ990C4m2XoS8PJF5VmaTVSJbhCXsqbQw0oWHCvQdkZ2sSMAVXAbIsAeF5yzGmmDPlKU69j+SK5pset1Eot5XmcoCeD9q8CEwT1k9UTa9Ht0CxDKkiKQfE5/p3PGZ8vuU+3hEr8w0ATDOnMhftFGSb3ngX4d+rLJuvKFVruHCGXOMSi7ll9uhVXaIaGsa120ifMeSnv6BIVJhB4cDNHUOjZgpq7bflP564nEW/BFoS3qDhL8U6VhE0UQ4m8gPZA=; 5:W2c3fNq7N0FlH7/kB6fhxRB0To+rAtSBHVQ/T7i4BaPFeqaLxVX590OOgkovNdXdZ8E7JWmn/ZnUojpAmjmW63T9MP4b7AwSPp9jAqjHrHV64QF6Q2+IB4YFls3Cfp6NgSC/zn8xNb0QZ1i78l1nRuRX8m7oEaBIlr12FwcZzrY=; 24:qizD9xllzaKehppQajuiDuGiLmcrD/Z6aIy3NMI56OtIBVDSuaTTvtsWsA2sIJlEMhyKmcnSDlMOpTx2PWLIWRWlYq1UTzWNLATBUn25g8E=; 7:XrmZPiVAcCcirqlQtkZfBUCPjVQATwx0QFRzTEil3lbc31SjFUDqhLx4HHNUIo0K9FWOuzDq64Xg+Blm9+DluVLdBHwaNDk+gXzlDL7PWLPcvV65OJX9DiqIKYXTFIzM8kSMXo4ESa+/o0BbVJUjWXfNihy/6nlqvreKsugoEmetRO2vkG8+X0M0tCl+W+TSlUsXMaaB7GyxtCNIo9vj5porMLuccRcD8BfQ6bzGN0OMl2pSZDhGx4rEeTv9QZ0U SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Dec 2017 22:45:45.8534 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d601161d-a753-4b22-2c0c-08d53b68c21d X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=711e4ccf-2e9b-4bcf-a551-4094005b6194; Ip=[50.232.66.26]; Helo=[CAEXCH02.caveonetworks.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR0701MB3824 Sender: linux-scsi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Quinn Tran Original code acquires hardware_lock to add Abort IOCB onto driver request queue for processing. However, abort_command() will also acquire hardware lock to look up sp pointer before issuing abort IOCB command resulting into a deadlock. This patch safely removes the possible deadlock scenario by removing extra spinlock. Fixes: 6eb54715b54bb ("qla2xxx: Added interface to send explicit LOGO.") Cc: # 4.10+ Signed-off-by: Quinn Tran Signed-off-by: Himanshu Madhani Reviewed-by: Hannes Reinecke --- drivers/scsi/qla2xxx/qla_iocb.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/scsi/qla2xxx/qla_iocb.c b/drivers/scsi/qla2xxx/qla_iocb.c index d810a447cb4a..106f4ac4f733 100644 --- a/drivers/scsi/qla2xxx/qla_iocb.c +++ b/drivers/scsi/qla2xxx/qla_iocb.c @@ -2394,7 +2394,6 @@ qla2x00_els_dcmd_iocb_timeout(void *data) struct scsi_qla_host *vha = sp->vha; struct qla_hw_data *ha = vha->hw; struct srb_iocb *lio = &sp->u.iocb_cmd; - unsigned long flags = 0; ql_dbg(ql_dbg_io, vha, 0x3069, "%s Timeout, hdl=%x, portid=%02x%02x%02x\n", @@ -2402,7 +2401,6 @@ qla2x00_els_dcmd_iocb_timeout(void *data) fcport->d_id.b.al_pa); /* Abort the exchange */ - spin_lock_irqsave(&ha->hardware_lock, flags); if (ha->isp_ops->abort_command(sp)) { ql_dbg(ql_dbg_io, vha, 0x3070, "mbx abort_command failed.\n"); @@ -2410,7 +2408,6 @@ qla2x00_els_dcmd_iocb_timeout(void *data) ql_dbg(ql_dbg_io, vha, 0x3071, "mbx abort_command success.\n"); } - spin_unlock_irqrestore(&ha->hardware_lock, flags); complete(&lio->u.els_logo.comp); }