From patchwork Tue Dec 20 04:33:40 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Madhani, Himanshu" X-Patchwork-Id: 9481083 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 E9B9960237 for ; Tue, 20 Dec 2016 04:34:15 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DDBAF27DC2 for ; Tue, 20 Dec 2016 04:34:15 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D262B284A9; Tue, 20 Dec 2016 04:34:15 +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.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID 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 549F627DC2 for ; Tue, 20 Dec 2016 04:34:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932838AbcLTEeO (ORCPT ); Mon, 19 Dec 2016 23:34:14 -0500 Received: from mail-sn1nam01on0081.outbound.protection.outlook.com ([104.47.32.81]:61592 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932559AbcLTEeL (ORCPT ); Mon, 19 Dec 2016 23:34:11 -0500 X-Greylist: delayed 156634 seconds by postgrey-1.27 at vger.kernel.org; Mon, 19 Dec 2016 23:34:10 EST 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=umQ6y4PFHwMT63Awa2YHyfVoc8HhFseWDwcLZ2GRmSw=; b=itm7qG4s1gow44lioBPVSWh0LbuTHVlRBU+O7uSF6EqeKJoaApgSseaCOtlfAggF9GgsHUTayOo866tAiYcRG6oUs/+scuK3Y6KR5S+M7sHpHxv5I5JZEu+2O/VNn1eFplR+so67KuKM1QWDkXdx5SECQYrBQNkuqQridBGRTAk= Received: from BY2PR07CA0093.namprd07.prod.outlook.com (10.166.107.46) by CO1PR07MB208.namprd07.prod.outlook.com (10.242.167.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.789.14; Tue, 20 Dec 2016 04:34:07 +0000 Received: from BN1BFFO11FD046.protection.gbl (2a01:111:f400:7c10::1:145) by BY2PR07CA0093.outlook.office365.com (2a01:111:e400:7bff::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.789.14 via Frontend Transport; Tue, 20 Dec 2016 04:34:07 +0000 Authentication-Results: spf=none (sender IP is 50.232.66.26) smtp.mailfrom=cavium.com; linux-iscsi.org; dkim=none (message not signed) header.d=none; linux-iscsi.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 BN1BFFO11FD046.mail.protection.outlook.com (10.58.145.1) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.789.10 via Frontend Transport; Tue, 20 Dec 2016 04:34:07 +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.309.2; Mon, 19 Dec 2016 20:33:46 -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 uBK4Xkaw012411; Mon, 19 Dec 2016 20:33:46 -0800 Received: (from root@localhost) by dut1171.mv.qlogic.com (8.14.7/8.14.7/Submit) id uBK4XjKK012410; Mon, 19 Dec 2016 20:33:45 -0800 From: Himanshu Madhani To: , , , CC: , , Subject: [PATCH 06/10] qla2xxx: Fix crash due to null pointer access. Date: Mon, 19 Dec 2016 20:33:40 -0800 Message-ID: <1482208424-12358-7-git-send-email-himanshu.madhani@cavium.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1482208424-12358-1-git-send-email-himanshu.madhani@cavium.com> References: <1482208424-12358-1-git-send-email-himanshu.madhani@cavium.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:50.232.66.26; IPV:CAL; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(39450400003)(2980300002)(428002)(199003)(189002)(356003)(81156014)(76176999)(107886002)(81166006)(50986999)(4326007)(92566002)(626004)(2201001)(39060400001)(5660300001)(575784001)(26826002)(101416001)(8936002)(4001430100002)(189998001)(86362001)(33646002)(36756003)(47776003)(50226002)(38730400001)(2906002)(4720700003)(80596001)(5003940100001)(305945005)(42186005)(69596002)(106466001)(50466002)(105586002)(8676002)(6666003)(48376002)(5001770100001)(2950100002)(87636001); DIR:OUT; SFP:1101; SCL:1; SRVR:CO1PR07MB208; H:CAEXCH02.caveonetworks.com; FPR:; SPF:None; PTR:50-232-66-26-static.hfc.comcastbusiness.net; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD046; 1:JsPsQGr+hhqYXEa+plOVgqYRM1oksPlMCUjqbELnnSW/bIML+iPsAW0ea6wtMzE0ZKRm1TBaqT54Nr3b1WnvJERHbnRIGW0lymTrdbq79CrhyHi0Q9rfYs2km4j0zESO/wMyzMfBU4T24OrG+3iP8pbP1vdHN4+5geJ0Ua/5P1Tfb00YTGwHi6aDmbMWe00s8R6jBVO6q8sHjOmCgOL8ZCuR6l1SLxvMnGWwi7qbqiTvyzoP7q6njCtQUfJZomWFYwVetUO9+h+1Wv3wCmMwBh4rKpsBv4fJvyWnV1GocuKZRVZ/gZf0FmKhHZ/SW3SoVd2RdnzRVVW9b1+9NNMOBwp5slmeAaeFNSebf872/e9o45cCRLk5Fu69ENH8lB7bB8senEu/VTn/h4JkphxH2BbBx7f6dGsIA9S5jU3w7ERZbH+cHsbcPczGZE5xvfZReCgTrNKHGyN3QYJltu2X98f7u7AqwBWhhC4SETbsu5/HjHaWmeFqoN6pljs/z3NTiDEVtlQYEQOnKblGKKadpQ== X-MS-Office365-Filtering-Correlation-Id: 5ce011f5-89b8-4d87-aafc-08d428916fb6 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:CO1PR07MB208; X-Microsoft-Exchange-Diagnostics: 1; CO1PR07MB208; 3:fkRY+ThmMIi4E/UZnR5TtiUxg90x8WRf2T/HRECd9X3FX7D0+KSFIJv1VHeWgkdcjBUhhiIhSjfS1ISoBPceC2VfXVbgfTQH154/qTz4JxQHn1rPCy5JTQkED6dIkXoqjhhEqk6wyiJY6RJSxjAlpCM9Z7auUaZVFHPd0EeiqTYWo0OfmJippj7BO+n/8XYfZDF2FFWV5iczMy9k9NLlk79BYO+V7tz+PfNVUb54tdFXiLdy37tccgr4yxbiMn8bFxQDxxuW5WttKBLO8wpidqSt8PyKcJ/aW3JfVHMMbEQrKm2kn/oN+JX7b7FUkFVCKaQxes45MysNxiEiSKrdfHARFOOOHMjPrxF5Mv+LgTegoNzwLS4MCVviBzELxD+U X-Microsoft-Exchange-Diagnostics: 1; CO1PR07MB208; 25:7A6bnl6Oa7vRY/F0rx4A9FAmu5xJEUTjMPZXeEC+XiqY9V20S+edFek31/XFQ9uZFpR9Bo2cfW8oAHsuTURd/k1aZbqlYh+gjIJ2C/8IqekITDE4g4JC4lzd6xOiIqRvbFI3p3KwLQKMG0MOtwDIEf35QIQuCx4g8A8V8alI0lkf5Wb/gz0N6h+WoI/PdtXFBEvuVuigDANYv/hINYHt9BJp72CXJu5keH0m957xJtDHN4zXzdiC8us613eiBbLNaY+UWPeR+o2IOoln6bSF4WMQcvfhkHV0ndgmZGAgW0XrIAO7aZ+sj5SlpTAK+gDOUE9zs6rUBaDCDbZeghe5kwiKtTjXzzi/X1w0n6BduwZJgeGaMNYuu0Ky3U/W5wOpNtGq+5FxFRCaMwMDszSGeurcjsLM++fBw2UelhGhAAat8ZigZRRg1n0rL96pvXSmEwUlWL5CfsI+9j1pONnoqgRhHXnhGC/eraEUEYem8A9dLCPQijstZb0F5w6njaa4VNsaFWslWZhzKJxmnm6TD9fTXakPpDuikAAyfBEV5+ve4V1E0UfWC7iW0ytD+gqXRDKH+UREEhc3v6y4Q0FXW7nPT7pUtkUkU0Y6x2jky6qg2hbzUoMZ9qbzhteseQfOWeEIgErKWUKmh+79c3RaTS6AqY3h7UhmQF3jYx2Mrg6hhJ/OM0ca+pLSasD/wAlMkzdWpGlmkOF7FADdMgLfU4hz4nFz/egdoJr/YT+fRgJV/EJIMgSsmunzXi9QGnv4TUJqG9OupDz1WL7i9dru9DhRbxWdwsjsVU4pNm0k2s/Rdo1JxEWglxrdbK/gxiZP+kq3hweObNAQwXdSNayOA2cSps/fND2LvB1u6aWLKkE= X-Microsoft-Exchange-Diagnostics: 1; CO1PR07MB208; 31:C+3sC7JnjQKjqm6KnQl2QmqkP0u6YPgWrm/vb0a8dcMq3IGRCFh9M90oO0B5UudPBXD+6vTHKe/QE7CkOTUSmcI4SBGoA3QM/TUHL9nOfsGWN1Wy4jGSoW/4SSPGa8zBBaWeq94g5gDkf3c4/DBUbMyHoZZO+LSApO6gT1QuGSELZKqeXOy152/qmI35sfPbGUhuAq2WxP7VRziv60cygBD2fU5mPTDVpmARgbo2m0iG218/bG94gQv7jyBn68qaH+Yqwa+ejn5Ud+fROXrm3Q==; 20:jSUDsMV03o8wOf9BDCcaSKo4cKQDkcSNDP58xxK7Zq+bdH6SpoJVmOSMC0185BtQpl9520OjIprR3/EzuPEOMH+Iu94eYj7gJL0HvuWcyCD6MuO6dB8fCDDMHbIXBxLn/P3xJjn8uvw4JtwaTuL0lWzwBHtusIFiXXCnSA10o5Q3sWMMGTU2aXnHYZnhqFRZdpYO2ndVmArm1weiWZwS7Nx8OXBXwvrLe3h2Y5FeUtFiLNkcp6YWzEsrN1OT32yPbacBbem+h0k7cEpPmqWYfTpCWJDHE9eaHfoBKF2MaCJarZjgfys/J6NnM9K5VDwVtAQgrMSPaePZEVS5sHqb0lpXsn5bzg1+BHph2RRdPlVZgY2rf1VqVJmhYRPvTIJ53FRJdDQ5tP1oGZFEthSzGkoc+yGVUkKahn+DsUO1rN0saKGOTUG2Vuwk59D2KeHIJsmXidJ/FKmpDm3JOhCOeYRpFotGYG47SwStKk3kLvkY8sZ0ErL+mjjC78ECykKZ X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(9452136761055); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(13021025)(5005006)(13023025)(13013025)(3002001)(10201501046)(6041248)(20161123564025)(20161123560025)(20161123555025)(20161123562025)(6072148); SRVR:CO1PR07MB208; BCL:0; PCL:0; RULEID:; SRVR:CO1PR07MB208; X-Microsoft-Exchange-Diagnostics: 1; CO1PR07MB208; 4:tCTo+vQY0bb3tfXa41BqE0/1T3bSPBlaqntyhxY3A2pxDQkjv582RgnfzXydySll3UQUFAAl9K3TB7UL43bYrNTdtpLMAsRPswe+hd5Y0tyak0P3sxHjOzF8IYH3ftDKPQKKK33k8DSH6ze8//PdQCr4AYgdLoylG1wVoZvQEOPirk6m8lRKMCsq5GiopEsY+SKCyixS1j554rSzPuyQWK5xbwMc8dbApdd69p7mOGbPRTtd9WrYU2BkDHMm9aFY43y/PbPQgY060MKbo5+E8YPYu4RTcGnSwg7apBH1z7blyVty8/9c6owADemjG3WVd+tBhhf9330j62hV0WuWkmxUe1/1eGqY6zss5rGPw8LmaOsa/ntVl3NvQd53sZYuMtyw0iFhkYBMlyViYhK7PmMxb84k8pbTCypHCkMWnDUUMMclNbir29k7SX7GyadQ/378rxVNSYUc00yalWzLbUEgoh2fWkntXzEOGiJ1zu9F+b6SWiwBPLDVTnEwZIEzTd2OWh5182fL/LuzUIzpZXyoHUIQIOCz0M3Y2iWVxKi2fIRyh3AeozlNrtnj1OIji/AW9rP8ddChGEKq3bYHbWPZIdchgTXWsSxeDd2LAn1bGyzZ9k0zapcT8zhB+CA+gA5+CphVbCFkswt9HrjXBoo3sMTW1kXUPw1Gwp52VOg= X-Forefront-PRVS: 0162ACCC24 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CO1PR07MB208; 23:Ne77c7+ATpf3E5xu8/NwNnSZnQMZ5SZRbClR3lCd6R?= =?us-ascii?Q?YwnA/LZlVnd8LbsOnd6r8/mE2js08YqoTvIPUnPqG+bsvIzmRMIQuiLq5GhM?= =?us-ascii?Q?JEtOJuZsjc7KS9fXFm4Ovwp4X4G2UOyyPtE9E4ZDSJeduFWyRZOnKJD3iu9Q?= =?us-ascii?Q?qU1vxMNdVvoq4BU74oOdDdag7XJynBlL+gpM3QL6voomnuabV3y8ur6Vp8we?= =?us-ascii?Q?ddEvSTh+We46TA/ELby9XSZCVPdqYnoSzn4a+clZrBBqxh4OktXyP/SSA4RQ?= =?us-ascii?Q?QVQBws8P1OdbVGqyqfsLwUREJg20Hy/ZZH0zTm9Nbm1F8FIgqTAKrWw+Zzxg?= =?us-ascii?Q?IwWrtrQy4VmIWruKkHtICow4ivXPESOf1EW3nUGk/5dQBQvuFkXJWOy1F+mu?= =?us-ascii?Q?5tR2MgGSR9Y7y1zmJxit4pO0pktxkP26CWXrTNLfclRr3fHNOaxAZoW9EdY4?= =?us-ascii?Q?T6YZe66KedklPMIaZzPuBwF7XtO4xxOt0BsN4DL00H92P1XfPUiNJa1Ahepz?= =?us-ascii?Q?sTr/haDTJ6g+dCLt15fSCRWUdz9VgP/3aPRm3APDlAAn12GHFdESMRRqxrhs?= =?us-ascii?Q?Bly57LeE4i/XEc4GcaGQP+FT/zZG5UatsHmVtbQ6/If1xqnoNkL+YFTPPaz6?= =?us-ascii?Q?btCbHeZLhOGnP8YYC1D7Jy3EmzkmPaqQxSKas3f+/cWMc++4/2iSruRT50gS?= =?us-ascii?Q?S3S4dooTiqiGL67e+2/5gw6DbcnxK4SuQoKoCWiu3FgZy8GpGbS2P2Eln5nk?= =?us-ascii?Q?47I7phbg3C5QZ48JR5qPMfZbiHgEwOnE/yh+8tYppPoLjdCwNJPbfTOmwmbi?= =?us-ascii?Q?fTm+vLI+sFYYtjJDVbxnoGKmrIkPvtKtPUyTBUS4H/uDJB2Q5y7BLwopbsbd?= =?us-ascii?Q?1qFQpxJpx76T0xPFah6PghdWXZnys3x4Tsip9lo7CaayQcslo28BxtJ8GqbC?= =?us-ascii?Q?g9MLQsGq0LU3TrfPE8V59pV7B6eaFT+tr8PUSKoo53JIQYi4qVy7nlQafJhx?= =?us-ascii?Q?daDFcM/t4IwXeUdBjftk4XX1TLnoiRgUKqCrOr22A/ytCK53rLDK3yO3/svR?= =?us-ascii?Q?egizvOVGogCEIxyf2+0AMWoOy8hYNlOqBAMqE0NsXQ74JFc3kOH77u06YgOL?= =?us-ascii?Q?iFEbxszWdqVdZbE+CkqwfNyAyLWKxusgdr4yozAsMUBx42/BWivQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; CO1PR07MB208; 6:OvQcelP8pIzVqBYDVuwYEcwss175joyuAmGJ7C/iNGeEXcFIPIXtfVyqqfPiYQIgsZW8Si99pLRKKdg9E0vQnSX0WKb3OMm2PNLzahQFoUVZufDyQWgtU+gzNGVpaRA6opdYnmRhVr5LU/xFzcSbY/gTjFGeiurHZRZvjDBq615Sis3L6/NWwm4X/RA5mnjmdtCz4pNM3Ru/8yCriuKSC4pkAjEDD/e/1mCRiOhtq0VLTG6A3zgVjmGMDQfJEYHC6pXgLKPdHdZfBvuYVD2/aKfZPUoZDouRGRAdYLY1ifsP2s059rRc0n2OGwG6cUKik+p1OtoRCDkZsRU5rLxoCLI6K5b2AjapuFWRQ1i+Pzlr3B3Cqom05zAEADIdqklVLO08KFtpYTZ4HyInV5Q46fgsdXy/PVs+pcX/zrp1NmM=; 5:ZjhQoVujkRDW/TODfQfODdLdzWviJP7r+nB/N3nwoTmsv8/kseC2WzpOYgxf+5f3hz5sV2FGiqV6heqRB1lDUPtEuXNgGKXsVtSOgm/xGlwUgtRkTFe76itM0vobxWuSXDliY0nsXZMx8BQHo7lT2A==; 24:CSoAj55jstiynW8IynPvV9xMXcZNla+uyLJS5/pR7DiUQh499QBqlN+B8/L4U2EzeKdb8bX8UFK9tCYmFh9O/JdQiW9mn4rlA0dTOenZEiQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CO1PR07MB208; 7:mXCYtQcn+ZpOMrrfXnrn/4uIL/v1oI7zBqVJjQ1wWN7/I1bQoXL6Nf/D2Nb4XLJOjB1CytPvyaB7ZNF2kyce4D/WnY8oZJKSC9OqQpNmSQVdEAZdshRwyN/+t9JQY0zpobJq3WECi49QNNRV8oY+eBiZuh1y6/uRJxfISVIi7cd/StVvtYuY1hPXxUQL3Xbjwtbabzs2GHn1GUVqC5Kx6fxuwOuURgEH8LJv3TG7dTVmgsDBPQn2+6N3c9+0dkDFKUddi0rNpJ8kWnOokSF2SDi3FWFJLe3/zk6IdUeLNOWjRdtpk8AFp11IO7UZx23nEE6sVjMR+LagB5lvhTnpjD0ShQXRRcIRd7NXNTAku+YkxOWohr3KUvJnOiOj/6LyDzq9mqYAJYz+dwzf6iO7QaJKAQc3SST5p3cXNNIwrtnZXn7dGdLKskv4RIpLykZIPZ3Xp/7l1k06b1AgVSUcGg== X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Dec 2016 04:34:07.2105 (UTC) 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: CO1PR07MB208 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 This patch fixes crash due to NULL pointer access. Following stack trace will be seen. [1469877.797315] Call Trace: [1469877.799940] [] qla2x00_mem_alloc+0xb09/0x10c0 [qla2xxx] [1469877.806980] [] qla2x00_probe_one+0x86a/0x1b50 [qla2xxx] [1469877.814013] [] ? __pm_runtime_resume+0x51/0xa0 [1469877.820265] [] ? _raw_spin_lock_irqsave+0x25/0x90 [1469877.826776] [] ? _raw_spin_unlock_irqrestore+0x6d/0x80 [1469877.833720] [] ? preempt_count_sub+0xb1/0x100 [1469877.839885] [] ? _raw_spin_unlock_irqrestore+0x4c/0x80 [1469877.846830] [] local_pci_probe+0x4c/0xb0 [1469877.852562] [] ? preempt_count_sub+0xb1/0x100 [1469877.858727] [] pci_call_probe+0x89/0xb0 Cc: Signed-off-by: Quinn Tran Signed-off-by: Himanshu Madhani --- drivers/scsi/qla2xxx/qla_os.c | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 8521cfe..df57fb3 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c @@ -3662,7 +3662,7 @@ void qla2x00_mark_device_lost(scsi_qla_host_t *vha, fc_port_t *fcport, sizeof(struct ct6_dsd), 0, SLAB_HWCACHE_ALIGN, NULL); if (!ctx_cachep) - goto fail_free_gid_list; + goto fail_free_srb_mempool; } ha->ctx_mempool = mempool_create_slab_pool(SRB_MIN_REQ, ctx_cachep); @@ -3815,7 +3815,7 @@ void qla2x00_mark_device_lost(scsi_qla_host_t *vha, fc_port_t *fcport, ha->loop_id_map = kzalloc(BITS_TO_LONGS(LOOPID_MAP_SIZE) * sizeof(long), GFP_KERNEL); if (!ha->loop_id_map) - goto fail_async_pd; + goto fail_loop_id_map; else { qla2x00_set_reserved_loop_ids(ha); ql_dbg_pci(ql_dbg_init, ha->pdev, 0x0123, @@ -3824,10 +3824,15 @@ void qla2x00_mark_device_lost(scsi_qla_host_t *vha, fc_port_t *fcport, return 0; +fail_loop_id_map: + dma_pool_free(ha->s_dma_pool, ha->async_pd, ha->async_pd_dma); + ha->async_pd = NULL; fail_async_pd: dma_pool_free(ha->s_dma_pool, ha->ex_init_cb, ha->ex_init_cb_dma); + ha->ex_init_cb = NULL; fail_ex_init_cb: kfree(ha->npiv_info); + ha->npiv_info = NULL; fail_npiv_info: dma_free_coherent(&ha->pdev->dev, ((*rsp)->length + 1) * sizeof(response_t), (*rsp)->ring, (*rsp)->dma); @@ -3851,6 +3856,14 @@ void qla2x00_mark_device_lost(scsi_qla_host_t *vha, fc_port_t *fcport, dma_pool_free(ha->s_dma_pool, ha->ms_iocb, ha->ms_iocb_dma); ha->ms_iocb = NULL; ha->ms_iocb_dma = 0; + + if (ha->sns_cmd) { + dma_free_coherent(&ha->pdev->dev, sizeof(struct sns_cmd_pkt), + ha->sns_cmd, ha->sns_cmd_dma); + ha->sns_cmd_dma = 0; + ha->sns_cmd = NULL; + } + fail_dma_pool: if (IS_QLA82XX(ha) || ql2xenabledif) { dma_pool_destroy(ha->fcp_cmnd_dma_pool); @@ -3868,10 +3881,12 @@ void qla2x00_mark_device_lost(scsi_qla_host_t *vha, fc_port_t *fcport, kfree(ha->nvram); ha->nvram = NULL; fail_free_ctx_mempool: - mempool_destroy(ha->ctx_mempool); + if (ha->ctx_mempool) + mempool_destroy(ha->ctx_mempool); ha->ctx_mempool = NULL; fail_free_srb_mempool: - mempool_destroy(ha->srb_mempool); + if (ha->srb_mempool) + mempool_destroy(ha->srb_mempool); ha->srb_mempool = NULL; fail_free_gid_list: dma_free_coherent(&ha->pdev->dev, qla2x00_gid_list_size(ha),