From patchwork Fri Jun 12 09:42:26 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sreekanth Reddy X-Patchwork-Id: 6596711 Return-Path: X-Original-To: patchwork-linux-scsi@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 271169F326 for ; Fri, 12 Jun 2015 09:44:17 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 4201320676 for ; Fri, 12 Jun 2015 09:44:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 5DCE020674 for ; Fri, 12 Jun 2015 09:44:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932566AbbFLJoG (ORCPT ); Fri, 12 Jun 2015 05:44:06 -0400 Received: from mail-qg0-f47.google.com ([209.85.192.47]:35460 "EHLO mail-qg0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932492AbbFLJoA (ORCPT ); Fri, 12 Jun 2015 05:44:00 -0400 Received: by qgg3 with SMTP id 3so9781508qgg.2 for ; Fri, 12 Jun 2015 02:43:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=avagotech.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=o44fJ3zR+fR2UFEblPcYwY7lXQafrDCB7mgO60+rptk=; b=JzivDhlQLcr+TgMMa9u7BkDIbGM11Gcxk5vpYwnoKcvgtPlwaylBUTvOmmd9J+Nc/Q TFG15UrUkJ0aq2jw2k7P8e8PPjcJ0QvibquXDH6aZTFMSOZvDL+k5069YmCK0WHeEq3j o0lz5hf7c8KyYH6IUC8eEiUOMWPn+c3K1phXI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=o44fJ3zR+fR2UFEblPcYwY7lXQafrDCB7mgO60+rptk=; b=KityZDQjP3LtTYhEjD1V7zCfXYEetnODq5YHqzdZe+I0a/42SwRyO9s1TKkFWVHrc8 AH7Cj/ndBrTD34V2uHOny+CC+2nQmzTjHuIDeps2tO0OMFdmRzhd0JdLv4qxYZne9qZW FpxK842D2GYXrQ63pfKo8XArrMMdcuvntwNRcCxsHi3DD7u5R41bjvlzv3y3KE2QJF4T 8pE6oq3dgMJLT4SJUILDH9a8GwWmUUonrV41pIobjEmoTe2G0xzRqLyar7kiUWZILyJJ ru23vLYDFB6+9mF39Gr5gBopGjrsks6GM8bSju/drhqIBEWKTZyUTPVK4cMq/yorZ+6J tuRA== X-Gm-Message-State: ALoCoQn4jl3MUPvviM8cfAAVX5hOGjOIQPa94v/OgOCJIIgpvT6k1NVJM17F/bkT5GgPASgfD48K X-Received: by 10.140.108.6 with SMTP id i6mr16931975qgf.73.1434102239468; Fri, 12 Jun 2015 02:43:59 -0700 (PDT) Received: from host1.lsi.com ([192.19.239.250]) by mx.google.com with ESMTPSA id 18sm1466219qgh.40.2015.06.12.02.43.55 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 12 Jun 2015 02:43:58 -0700 (PDT) From: Sreekanth Reddy X-Google-Original-From: Sreekanth Reddy To: jejb@kernel.org, hch@infradead.org Cc: martin.petersen@oracle.com, linux-scsi@vger.kernel.org, JBottomley@Parallels.com, Sathya.Prakash@avagotech.com, linux-kernel@vger.kernel.org, Sreekanth Reddy Subject: [PATCH 14/20] [SCSI] mpt3sas: Complete the SCSI command with DID_RESET status for log_info value 0x0x32010081 Date: Fri, 12 Jun 2015 15:12:26 +0530 Message-Id: <1434102153-38581-15-git-send-email-Sreekanth.Reddy@avagotech.com> X-Mailer: git-send-email 2.0.2 In-Reply-To: <1434102153-38581-1-git-send-email-Sreekanth.Reddy@avagotech.com> References: <1434102153-38581-1-git-send-email-Sreekanth.Reddy@avagotech.com> Sender: linux-scsi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID,T_RP_MATCHES_RCVD,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP For any SCSI command, if the driver receives IOC status = SCSI_IOC_TERMINATED and log info = 0x32010081 then that command will be completed with DID_RESET host status. The definition of this log info value is "Virtual IO has failed and has to be retried". Firmware will provide this log info value with IOC Status "SCSI_IOC_TERMINATED", whenever a drive (with is a part of a volume) is pulled and pushed back within some minimal delay. With this log info value, firmware informs the driver to retry the failed IO command infinite times, so to provide some time for the firmware to discover the reinserted drive successfully instated of just retrying failed command for five times(doesn't giving enough time for firmware to complete the drive discovery) and failing the IO permanently even though drive came back successfully. Signed-off-by: Sreekanth Reddy --- drivers/scsi/mpt3sas/mpt3sas_scsih.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c index 64dd90b..837c22a 100644 --- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c +++ b/drivers/scsi/mpt3sas/mpt3sas_scsih.c @@ -4241,6 +4241,9 @@ _scsih_io_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, u32 reply) scmd->device->expecting_cc_ua = 1; } break; + } else if (log_info == 0x32010081) { + scmd->result = DID_RESET << 16; + break; } scmd->result = DID_SOFT_ERROR << 16; break;