From patchwork Tue Dec 6 19:07:41 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Madhani, Himanshu" X-Patchwork-Id: 9463133 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 18C7C6074E for ; Tue, 6 Dec 2016 19:08:23 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 08C99284C9 for ; Tue, 6 Dec 2016 19:08:23 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id F1AF2284CD; Tue, 6 Dec 2016 19:08:22 +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 2D7D0284CA for ; Tue, 6 Dec 2016 19:08:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752253AbcLFTIG (ORCPT ); Tue, 6 Dec 2016 14:08:06 -0500 Received: from mail-by2nam03on0068.outbound.protection.outlook.com ([104.47.42.68]:48421 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751982AbcLFTIE (ORCPT ); Tue, 6 Dec 2016 14:08:04 -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=3pH4/gHBWPHHd7Mzz5V3pV0+/UBIIjGYkhVz3nx+fZU=; b=QvLOe7/H12eqBT94xIi1EWU5WrmciZOvehEryHdlSHQAWxgEgUF9C1aSPi1yMK08IEmRBbOMCG6ZxfLZJ9G3s91B/5BBR2iWxF4oM1W07UvOz9gO6jW5V4SonlzO+GkXpzA/lEcZvCuiQ9Q2DXzfZ/mNdS/Qsl2FjMCVLP5XXh4= Received: from MWHPR07CA0024.namprd07.prod.outlook.com (10.172.94.34) by BLUPR0701MB2081.namprd07.prod.outlook.com (10.163.122.151) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.747.13; Tue, 6 Dec 2016 19:08:02 +0000 Received: from BL2FFO11FD056.protection.gbl (2a01:111:f400:7c09::175) by MWHPR07CA0024.outlook.office365.com (2603:10b6:300:dc::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.761.9 via Frontend Transport; Tue, 6 Dec 2016 19:08:00 +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 BL2FFO11FD056.mail.protection.outlook.com (10.173.161.184) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.734.4 via Frontend Transport; Tue, 6 Dec 2016 19:07:59 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:; UpperCasedChecksum:; SizeAsReceived:1107; Count:15 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; Tue, 6 Dec 2016 11:07:49 -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 uB6J7mw4032395; Tue, 6 Dec 2016 11:07:48 -0800 Received: (from root@localhost) by dut1171.mv.qlogic.com (8.14.7/8.14.7/Submit) id uB6J7mpn032394; Tue, 6 Dec 2016 11:07:48 -0800 From: Himanshu Madhani To: CC: , Subject: [PATCH v4 1/6] qla2xxx: Only allow operational MBX to proceed during RESET. Date: Tue, 6 Dec 2016 11:07:41 -0800 Message-ID: <1481051266-32362-2-git-send-email-himanshu.madhani@cavium.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1481051266-32362-1-git-send-email-himanshu.madhani@cavium.com> References: <1481051266-32362-1-git-send-email-himanshu.madhani@cavium.com> MIME-Version: 1.0 X-IncomingHeaderCount: 15 X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:50.232.66.26; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(2980300002)(428002)(199003)(189002)(33646002)(76176999)(50986999)(189998001)(38730400001)(39450400002)(50466002)(4326007)(2351001)(101416001)(626004)(80596001)(39410400001)(356003)(69596002)(39850400001)(105586002)(86362001)(305945005)(36756003)(39840400001)(4001430100002)(92566002)(6666003)(110136003)(106466001)(107886002)(6916009)(2950100002)(4720700003)(8936002)(81156014)(81166006)(42186005)(8676002)(48376002)(5660300001)(50226002)(5003940100001)(7846002)(47776003)(2906002)(87636001); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0701MB2081; 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; BL2FFO11FD056; 1:pzltx6pdddlJyHzBRxrcYZPU9fEcAfGDVYzaXZ2L31JdriGV0ziAyBm+ZomBqLfaZTd5prTbuyMQxgUjbGoRM1JbV5GDwJYL5Pq3LniZKkmX2+pXXt+Y1Yk0TlXdNzoG+YlhMczPzni7php5I7HLA2irMIM5WfcYaaMr3FYid7BB1/oDl5jF/gWjDJmvFZKGp049rzuxWRjQxpuqAbz9wXrj9WaNIZcufUQksYL+JsnFa6smlgcSk/20awu4+mluQUGMebtfndNrRo+UlaFX6w0IyyVSXXz3TIj7rpPNNGwrhmPW/1tFHqs9cQ3wTbuQgeck9mZ7At9pZjmmSgz+r8mOvkZl3Lizk4ckEKmuuzkyP2PJmMmZIz6Qozm5VdvMTE4eFYOB5R93647vu+uoRjHydTe6YbXf4deUBvswSHzc3ESE1rCeg/9yO6Tgh8E48Ma6m2+qOnjPU+u3CsY/ct/0JTsjbKdyCU8LytAd7E6h9UW66n1W9Yx+rTr8beaHkP+bmX70RiPZXHmG2nrKL6RaBjAz51NeMZaZzqAkOyg+KoAz2y77iSB/61trjn4m X-MS-Office365-Filtering-Correlation-Id: ebcbd9de-4d91-44c3-2a1b-08d41e0b31e3 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BLUPR0701MB2081; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB2081; 3:YGOCYpkEPsNLtX8KTS1U4Olg0wzDMDlywNFyDClUsKvnSZ4BD55CAPP6OLStIlQ6GCvc7u3W0BYJHR8a1d7CyHJPhn90RdEosRqBOO+zBH8gnsNwTMbMqVWGnl79MCKBuCloN6AkAtvhg71PkoHVQ1/JXnA6ceJ8atpJBEIroJh3gROQw3xHc+5a4IsIRqTJZ+OaRiXP6RuL7amMfbK77E2A+CBaFJBizHDm5NJHHk2P4kvhDLndQXXyoZJLn2zbuacar7JCDssNQ3jwQ3sPte7EDghEwMU2wmG90t5hzQbz3RT1k6mwO5asRYDs4xdEpuWxwerYUW6w4CSaqETE5DgKJUbz8RHhqC+Ad/Mx+btvsNuSl1cS2rcMtW5IEVlH; 25:hOrfROKF+GE0UCpVkzMaJA6gAlusmaCaovrcrmIMLar1AFjwydWJe8DaR3YpYqGP4mR0oKxX7OV42UNFzCv1I11bCMcLVwhLjjKe33WERqACAJuYZ3ZZtgRI15OX/jB98sTWtsR9Md1NuBXNSNlncTP8tqnfOXRox19f0eRyocwVrWIY1QtTHD1c2yybm265X/NOZkud04Vonb/w+/alxBitxLhjKnMMz90ZKYVkOdhSirCYBrOD0Ao4WTg0cNvDIdNlvgRB+6SxRrPpoJ11zQsA7NcXEzpvs+KF7pM094uOz1I4aByQcZ8qqcF9jDIRjcaDYB27B4Hz0VT2++fY+MbtH1xIVtenwMIRLQGqGTRVK507DJiK57ttTCvBKwFL59bk5fU+FO3BSZpFAKz/FG8vAUivOE7+BUUtVTKYL2HqFjkefpQfdTrbFjq5pubeCXicpPKsK+8M5gRrauLNdw== X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB2081; 31:U0vu+HpMRI3eR/YC7EL40eGhGqxQNcXHjYTdabalxDTWy19sEFJxs3E6mXrQsPxwlpkR/CasO7lvUiwr0+xisgp1ix674tDv2Ncc9ETzAH0pqhC4ywTTND7J8M1pGBPsJ0Cd0lpPU1//XpnDpIs44wkqCpMA5R3H0p4IsVsRfN4GPlPe1q5ZfnOLd4QBvijU0v2sBZEMK/mVL48hDL5Eysykp6XOR1hVT58A8IK21QHu4K7YrLPzh6hjTCEgya+aUGH6oMVxyExaF4GTzDswLeYr5HbE+APRVZI6XdJ7aCc=; 20:JlaooQyY8mDiib+adG8zb73mwiK/Yl/RErc3vOhatTfPrC016AMgqshpkuXYhSFCH/SYcTFoRQmnopmfG6cdm9EEWqtQ2+eunkAtjNccmyxD/Lg7FJZgpud1CYPHDo3DK9/EO7Nm/jffl/Moz2GfEIhy74feeDO5oTfZQiY39VYEBwsrqE2gIs+sjVGwYAZtP8okQKCZfsuYgEI/cqV/27Y7msMtuReTOiYO91uJgqcgzx38lknfVf5sNb37EwjvdmQxtU1WkqBJfm5nNtCVsmx34SDhRmKWnUm0jOCG2K/BFGEHKMlK/grY75Q0hoC1aDMEoeqP51VminDBMeQLoca+Y/rUC0l23dterMzriKuM6bPfGRoQxUcOH12nr+7ra+mGhgtb+zr3dAr6caC4Tl7AN19ZcqzVlSBGQtils684Kyrdfui14PfT3PUJwT/sJ5LOCDwB0W00xp/QA2JpAHIKQM4mHpPU/dVTmZEPja5YtGrze4r94pgyv5paq1M6 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13017025)(13023025)(13015025)(13024025)(13018025)(8121501046)(5005006)(10201501046)(3002001)(6041248)(20161123564025)(20161123562025)(20161123555025)(20161123560025)(6072148); SRVR:BLUPR0701MB2081; BCL:0; PCL:0; RULEID:; SRVR:BLUPR0701MB2081; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB2081; 4:F0vpdgaElNUgGPN4ll/o+90mR/kg/cZazyHodfnsxVEjJxvz7Bebgpdqky7y6cUGmCiCxEuq0hrIfS4Mq6IraRLp2Oq54PbRj8Pf20Q0SbOWZuYJaqsvtx6Ttlfu78n/l00VnpBYYB38Rcd8kWOEXgLUDpBAb+ODLXF20Re6nkuMaYNziNLMsL+qvbdAP/h6zMPKrRsnvcuwCmrAKJ2KyTDHkhqKnqkli+BLXCDoFqFg9xBr4cY1iQax9cHE9sQboEtURH93XGr4fYkpfUQmhbkbyoYdoipZadxpRbMsavF6VqJ7VNkNgEGD0df8QicEqcdmOua4sS5KLLYKPBVVNtGCN7OnBN3YMpMKUNfdRAGaDDalFAHIWyjRWqXxx3rkxVJONtmTC0RGdCj+6obWeFb/oP84JFKEL12MLOsBJBaVOib2J8vBkr700NV1cVLR2ZhjTJz04ytEx8kk88ulUUQH3cLoJr6QM0H4NbIMU2Rzni/nL5MIXd2Mw3lbNwyhZ18ZhuiAVbRVx1Xz3xgq274Nq4M2fIMaxUdaPE9nl0uIYnYZaB23dtxj5b3pV+294J4Zv2nMkD6mz/pkAp5wHJPXTvNGz5AuWjBSmDTgi/SVpd7B8a1xCTAo3rWiw3GapNFYQoyb6hbmA7vVzxNNAiBKqECgurROeihj3DzhLqU= X-Forefront-PRVS: 01480965DA X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0701MB2081; 23:olONA+cGTOJCbZqv1F87Pq1oC7xXHce0XAf9dzq?= =?us-ascii?Q?XmSPt6qSCdveCRVwVQBB/SzWEnq4lM/xrPxdlX6xfV2dWfQ2sGY91p9UEVG4?= =?us-ascii?Q?nou/HHg9N80B5qTvtKBXBlM4wLAlUfZbbVFK9JPZIPV+OWb8QTQiurP0AI89?= =?us-ascii?Q?guuEfTE4DFdZTLxBEZ0J/sfx7tRfFbpXTMfE6uY9mGUQDfSMW40N2481LHRG?= =?us-ascii?Q?INaPlSLxo84b02DqpM8+FWSfMmJpAPdjpb3265VEsZsXw4P5Lz5CA2Bclq8J?= =?us-ascii?Q?63TUPCd546kLjI+PNVEOyWK06pF/J9yRbfPZiGCqhefHWZs7OrHlhQXbaUTN?= =?us-ascii?Q?Uo5jUct5QcsBln+cAlSdCJQnD/F3yhQBd4MiWquLBjtOSRhRq8b0e9P4gtNH?= =?us-ascii?Q?/G3BE1x4Vh+oDux+DFsgOi3OLu9jDoYBCHMy3r7WRJ7SJoUTfRzPlOTw5KKQ?= =?us-ascii?Q?vtrqVYboOtP25Vdgm5sI09QUoCc5Zvf3scH/eEe0Y+7AVX6G5+/RgHU5piW8?= =?us-ascii?Q?WKRQcsc16vG9yW053GaBaVfTnYbU5CfAL9R6QtDMzf/ni0FibMfhuJ1yRveY?= =?us-ascii?Q?Apmh1mB1IqmlmRnXWYWEsOYroRrdCXPi/gEWZF99fIpppjjLrx2BxZZTLASp?= =?us-ascii?Q?Mtc/8fVfVUJi2n0R3SCN/GQwNSCm9Q8nGayr4cbzGUCnpycePdGgnzR8D6DF?= =?us-ascii?Q?0eos+S4e0osEoy7dBPkBQhZHUqTe8K386ABcSCu/uf+Bj95b6rj/pdoBVtMR?= =?us-ascii?Q?4SnnRZIK4J4KZHTWsDf4aBEMvvi/wn4G8eW2yRKIJBdMBnW82CgjK9VSqvKI?= =?us-ascii?Q?KpgvcFwXcwtbeeOVq8rZUnibJ7DO4nqtH98L5N2Q5/IG48TucYLIToA27VJ1?= =?us-ascii?Q?FpSFnTBkxIlZroUksnAsH84f8xgCzXN/1HPjyJSFKQFNNMmD+FpQGFn0wqJz?= =?us-ascii?Q?94brzxQgyW3Hb8UG0IW2woTJwAYqu1ghUHgmK8As+iw5VCcYGZ1XKwaG7lDT?= =?us-ascii?Q?NiusI18sCHkpVTdGtxjHt+5jo3CIJErw41OLO2IGDgv5gYQrKJEGLU0m6lEf?= =?us-ascii?Q?wn9kw71IGr/TWixjO1M0zz7MUn0uSLK32vEGDqZrSGPoyY79umCiQ1NQNVBz?= =?us-ascii?Q?HcsFMJclzekd7C9o+Bmsjk4YMNugn6fByvxmL/x8vDIW2kB9VVGPQvgH5JwJ?= =?us-ascii?Q?aEIEBr+B/9VUCM6kA9AGkAUR/bdJ9ZNwoTPCp?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB2081; 6:pzRtsYdrJ7qCXaSXdFuflHWaWqtRK+/VZ7Yx89/vEP9Y1VGudwpoYJhmHmSQhMBgzb5d1a877Du8MWLrZi72Z2RYMq1S08yiopH17jLhvJdXVKQa+HlpFas63P+aaycNQShnUDz4S5WPniws/6GXQCQ4xowpM731Za2f0eiki30IEa3KysbKZu0NJ486//bzf46eL0EZsojX4orcyZS0ZgCsCEv5yPjiKNLzLJQc0bDlcG7oKJniMf42rbgU2NTreYtyqr3OaPvNy+4EHAA2l0wJnnz0lWw42oPxSwSYMjL3tms3tvJtkxtufkSwrBwZQ1IeqCZQwrhLHK8ccUXMfV9bDVhgtcKnTy7/ZwytNfK/KlLH1w0IZESxMiplxqHIB8/2Nf7nyWj2knRj3LfSj5O8hTlTFAI+m5qFEaWTcDrcnvEC6rub7+tLyFGUYkMpEJOSqwSe8ndf0oTC1HqzsQ==; 5:jNu905xKtspELIMo+itSyomjJbLSVqoVlPsTcxyg5siG99pHmrDVWmleeeOYKsPL5bGFHvFsi8c7mslHjqpbjVhSFz9uoMMoARm3W6wsxsA4hOFO1BycyOqX4NxpuGVzSEDcP13pH9ViQPJZ5snLUA==; 24:xShsCZBjnCewKbwiGc6gfOdniJbCIsAu6rWK5EYG6JuQl89Z+kxu3VeK+zlk+sBLEPUXZQuyOZOmgfgbE8VhfFuJ0iH3ETWAR0o4vDwC2uE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB2081; 7:8aCVMIaOYuoPpIwjP6VO0k+iusDeWMOR9JIurqz4XzpsL+72IF2gE3GcvnMw1M7dxrJR+k7MOMO9CzaGzJilMOWEX9+GwDZNbLyKq9zZDKc/VIX7gdj+w9f7zuR/0mLsCofEI9YsT8EprUwpllJrlfT+xqPnCO2m/4KBjju+RVmdI4NS+iqr27OGH3nOuGr5GPnc/tYDWALbcSKykN0bxM6BF5SirZ3G17bVomobGmEe+OYmZ9xwylHOEUfNyBuGLMxVeGexnP8kl4aZjOiz05jeUKdDUmbCPnBb7khuX4oRX6KTd7NbCUjUiB1p9xSTAkcS0O6QHfH6kYjSQFzoTwhWKWUP+FHAUOzvC7H6rzHab/yx8X5LX9I8R/O/civKPA/kvXkqeGnNc69DBuj98neWvw3Qe5aL2wJwiPE5otWOlLH++HgHAaamWV57O1/ykYGu0F/zzecxlwys3yy8UQ== X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Dec 2016 19:07:59.2783 (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: BLUPR0701MB2081 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 This patch is allowing only ROM mailbox command which are necessary to initialize chip after a reset has been issued. In a target environment, there could be a user space daemon which can issue statistics and other management mailbox command which are non-critical. This patch will timeout non critical mailbox commands immediately rather than waiting for timeout, if driver detects that chip reset has been issued or chip reset is in progress. Reviewed-by: Hannes Reinecke Reviewed-by: Christoph Hellwig Signed-off-by: Himanshu Madhani Signed-off-by: Giridhar Malavali --- drivers/scsi/qla2xxx/qla_mbx.c | 52 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c index 23698c9..b31c36b 100644 --- a/drivers/scsi/qla2xxx/qla_mbx.c +++ b/drivers/scsi/qla2xxx/qla_mbx.c @@ -10,6 +10,43 @@ #include #include +struct rom_cmd { + uint16_t cmd; +} rom_cmds[] = { + { MBC_LOAD_RAM }, + { MBC_EXECUTE_FIRMWARE }, + { MBC_READ_RAM_WORD }, + { MBC_MAILBOX_REGISTER_TEST }, + { MBC_VERIFY_CHECKSUM }, + { MBC_GET_FIRMWARE_VERSION }, + { MBC_LOAD_RISC_RAM }, + { MBC_DUMP_RISC_RAM }, + { MBC_LOAD_RISC_RAM_EXTENDED }, + { MBC_DUMP_RISC_RAM_EXTENDED }, + { MBC_WRITE_RAM_WORD_EXTENDED }, + { MBC_READ_RAM_EXTENDED }, + { MBC_GET_RESOURCE_COUNTS }, + { MBC_SET_FIRMWARE_OPTION }, + { MBC_MID_INITIALIZE_FIRMWARE }, + { MBC_GET_FIRMWARE_STATE }, + { MBC_GET_MEM_OFFLOAD_CNTRL_STAT }, + { MBC_GET_RETRY_COUNT }, + { MBC_TRACE_CONTROL }, +}; + +static int is_rom_cmd(uint16_t cmd) +{ + int i; + struct rom_cmd *wc; + + for (i = 0; i < ARRAY_SIZE(rom_cmds); i++) { + wc = rom_cmds + i; + if (wc->cmd == cmd) + return 1; + } + + return 0; +} /* * qla2x00_mailbox_command @@ -92,6 +129,17 @@ return QLA_FUNCTION_TIMEOUT; } + /* check if ISP abort is active and return cmd with timeout */ + if ((test_bit(ABORT_ISP_ACTIVE, &base_vha->dpc_flags) || + test_bit(ISP_ABORT_RETRY, &base_vha->dpc_flags) || + test_bit(ISP_ABORT_NEEDED, &base_vha->dpc_flags)) && + !is_rom_cmd(mcp->mb[0])) { + ql_log(ql_log_info, vha, 0x1005, + "Cmd 0x%x aborted with timeout since ISP Abort is pending\n", + mcp->mb[0]); + return QLA_FUNCTION_TIMEOUT; + } + /* * Wait for active mailbox commands to finish by waiting at most tov * seconds. This is to serialize actual issuing of mailbox cmds during @@ -178,6 +226,7 @@ WRT_REG_WORD(®->isp.hccr, HCCR_SET_HOST_INT); spin_unlock_irqrestore(&ha->hardware_lock, flags); + wait_time = jiffies; if (!wait_for_completion_timeout(&ha->mbx_intr_comp, mcp->tov * HZ)) { ql_dbg(ql_dbg_mbx, vha, 0x117a, @@ -186,6 +235,9 @@ clear_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags); spin_unlock_irqrestore(&ha->hardware_lock, flags); } + if (time_after(jiffies, wait_time + 5 * HZ)) + ql_log(ql_log_warn, vha, 0x1015, "cmd=0x%x, waited %d msecs\n", + command, jiffies_to_msecs(jiffies - wait_time)); } else { ql_dbg(ql_dbg_mbx, vha, 0x1011, "Cmd=%x Polling Mode.\n", command);