From patchwork Thu May 4 16:51:59 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sumit Semwal X-Patchwork-Id: 98548 Delivered-To: patch@linaro.org Received: by 10.140.89.200 with SMTP id v66csp698247qgd; Thu, 4 May 2017 09:52:31 -0700 (PDT) X-Received: by 10.99.189.2 with SMTP id a2mr47045500pgf.85.1493916751595; Thu, 04 May 2017 09:52:31 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n5si2533622pgk.367.2017.05.04.09.52.31; Thu, 04 May 2017 09:52:31 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org; spf=pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755232AbdEDQwa (ORCPT + 6 others); Thu, 4 May 2017 12:52:30 -0400 Received: from mail-pg0-f54.google.com ([74.125.83.54]:34814 "EHLO mail-pg0-f54.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755533AbdEDQwa (ORCPT ); Thu, 4 May 2017 12:52:30 -0400 Received: by mail-pg0-f54.google.com with SMTP id v1so11485278pgv.1 for ; Thu, 04 May 2017 09:52:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=39JnE8eeNdvjzOz7jFkvQV2d45d5kCVs3Ednq6F0ol8=; b=Pj5KOoI/SVou4gbRU8mxXohwHUuSWhZ8DVJAN//goesZVGiNjWrA41wEqG3oVe30tE 3iJBbcV/gx+4ordf14Hs3CZ23qW3Ea3sOcvdQM6WLDygJ/T2DzAGvH9UuXnIcZcY8qBc 8x4Bb2rBuFjHbOa/kL+lLqqpsg9tjNz8Qx+Ag= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=39JnE8eeNdvjzOz7jFkvQV2d45d5kCVs3Ednq6F0ol8=; b=Wooiw8T5Nr12CQk7Pbf2LaVilBckFelWigNVNaCvnXvtrbmcKk4DL2Yh5CX+TmzKRq NXjqjssBhgODPjHwEL2MaAdr6cUlvXx+vgBs9zhTFuPDqtfsnOnxZp3kIG2gRBgUI3XK biHgkj6fvibHvnsYfnol3QMQ2yKTQ8LJOqmLf0li+g2IeBu7WZP7/Y5TUYPv5yPu2k4Q eR9L1P5+n70HKN0HtKQzcPD1gADdENdk6e4JN+ATqrQ9g2gxn9j4LWTtxL+h7Ap/2i/P EQi2Gok2UzABw/Q0M+mZJzgm5On7oxu17PkpRsHXODc8gzllNrfXuZjpQTHd6f7T8hsy 2D6Q== X-Gm-Message-State: AN3rC/5gcsfUSCNRzvuEz1e83beKBDuXpbOpSuaGxoZVlhDExr46an+V aU9fNH6Thk8O7y0e X-Received: by 10.98.222.70 with SMTP id h67mr11727375pfg.63.1493916749602; Thu, 04 May 2017 09:52:29 -0700 (PDT) Received: from phantom.lan ([106.51.225.38]) by smtp.gmail.com with ESMTPSA id w85sm4946121pfk.62.2017.05.04.09.52.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 04 May 2017 09:52:28 -0700 (PDT) From: Sumit Semwal To: stable@vger.kernel.org Cc: "Matthew R. Ochs" , "Martin K . Petersen" , Sumit Semwal Subject: [PATCH for-4.4 3/4] scsi: cxlflash: Improve EEH recovery time Date: Thu, 4 May 2017 22:21:59 +0530 Message-Id: <1493916720-8819-4-git-send-email-sumit.semwal@linaro.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1493916720-8819-1-git-send-email-sumit.semwal@linaro.org> References: <1493916720-8819-1-git-send-email-sumit.semwal@linaro.org> Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: "Matthew R. Ochs" [ Upstream commit 05dab43230fdc0d14ca885b473a2740fe017ecb1 ] When an EEH occurs during device initialization, the port timeout logic can cause excessive delays as MMIO reads will fail. Depending on where they are experienced, these delays can lead to a prolonged reset, causing an unnecessary triggering of other timeout logic in the SCSI stack or user applications. To expedite recovery, the port timeout logic is updated to decay the timeout at a much faster rate when in the presence of a likely EEH frozen event. Signed-off-by: Matthew R. Ochs Acked-by: Uma Krishnan Signed-off-by: Martin K. Petersen Signed-off-by: Sumit Semwal --- drivers/scsi/cxlflash/main.c | 4 ++++ 1 file changed, 4 insertions(+) -- 2.7.4 diff --git a/drivers/scsi/cxlflash/main.c b/drivers/scsi/cxlflash/main.c index d0eed07..0b09673 100644 --- a/drivers/scsi/cxlflash/main.c +++ b/drivers/scsi/cxlflash/main.c @@ -996,6 +996,8 @@ static int wait_port_online(__be64 __iomem *fc_regs, u32 delay_us, u32 nretry) do { msleep(delay_us / 1000); status = readq_be(&fc_regs[FC_MTIP_STATUS / 8]); + if (status == U64_MAX) + nretry /= 2; } while ((status & FC_MTIP_STATUS_MASK) != FC_MTIP_STATUS_ONLINE && nretry--); @@ -1027,6 +1029,8 @@ static int wait_port_offline(__be64 __iomem *fc_regs, u32 delay_us, u32 nretry) do { msleep(delay_us / 1000); status = readq_be(&fc_regs[FC_MTIP_STATUS / 8]); + if (status == U64_MAX) + nretry /= 2; } while ((status & FC_MTIP_STATUS_MASK) != FC_MTIP_STATUS_OFFLINE && nretry--);