Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2992868imu; Mon, 19 Nov 2018 09:05:48 -0800 (PST) X-Google-Smtp-Source: AJdET5eqjY3JNXNY21ZuGEMKQSWmnGFmW7hUox/rKbG0lWd2TaFvOb++IHU0LGtjGNQyejI54EnT X-Received: by 2002:a63:920a:: with SMTP id o10mr20279406pgd.141.1542647148937; Mon, 19 Nov 2018 09:05:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542647148; cv=none; d=google.com; s=arc-20160816; b=qmx7nfkKO2w2Ki1TF8YPy1QSxiaAAdC/FrzGKe13O5latgfvqBl5yAED4UPz46oxhg zs+ZMcsbvb6WVJ45EJiL0Ai4NZHz8zxSS8qAU5qu/YGEi7czMSHexSyM2iS4vWD2sHwT 5waf/jn0I2kVvTcw0DipN1FnEma0+T4oa/O3EESiqPeh/g228xtjNS+96MR5zUf9HCbM YSmUb8vQ8pEHRuem/dr9GeUsxrjOS0kZLJfhLv/cJw1oGd8BrUXA1RQ0YcCUCicIK6Nu runQJ9ZDXhtauUDe25OlRdpl39BLlPpXZFM8100yGRaYMEGK9aVuFHnh5WZkFTajGjT+ k3RA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=pMDnZrSfu0VrbEgjQBg3byCCMU0RmzgXIZtbiTpyCxw=; b=an4vm/K7P0UJZUv72ULtp2ZmcosspiCKt76fvOpK4l8jI7JhtPp4Oco3FIDNU4RoxJ M7ARq6p/eyuaE0lMUKLiDvjC4vuYctwrNReYDt/A2M/+SaIGuMoaNMiZ8PDFw4CZztF2 p5pGiUl6kUwniZYYZVOd1nr128rLYSIChe0cwz7Qoqds79hXEJY6T9jriBE49MhYYEt6 Sjcu5akW4td4A3TvGiiAoPfSt0+jUfvfGWtrdeAoZcbkdjwG0hrfho1dv1guZRLA8mqZ xFbByPSwSfB+F9/SVta+bB+vxkI5HaG3apkISCZSfe1cpXV2BOyfLC0FrLgk267Ifaz9 NFsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=y8ObDh3H; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z21si38504034pgv.363.2018.11.19.09.05.33; Mon, 19 Nov 2018 09:05:48 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-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=@kernel.org header.s=default header.b=y8ObDh3H; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2405533AbeKTD2d (ORCPT + 99 others); Mon, 19 Nov 2018 22:28:33 -0500 Received: from mail.kernel.org ([198.145.29.99]:42902 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2405461AbeKTD2c (ORCPT ); Mon, 19 Nov 2018 22:28:32 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id EA95D214D9; Mon, 19 Nov 2018 17:04:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1542647055; bh=6rhgKeQAd/eGpdgi19mL22FJ/S/xrb9WX3YVtKzYMvw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=y8ObDh3HRiH2UwD9YR/Dx+6Q1qLLGV82/UV0qSsLtu52F8IkPmZDPhPUvdPuJ287y aAP816iyVD35JvQKtnpwwsZnA2EXSleCpYNThwwvF0zmTtemV3Ujq9IfEFvIKd5B02 44tFznEdGhdJGNX+0VwYm6ifPsMVUGD7j0uurJPM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Dick Kennedy , James Smart , "Martin K. Petersen" , Sasha Levin Subject: [PATCH 3.18 26/90] scsi: lpfc: Correct soft lockup when running mds diagnostics Date: Mon, 19 Nov 2018 17:29:08 +0100 Message-Id: <20181119162625.162444940@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181119162620.585061184@linuxfoundation.org> References: <20181119162620.585061184@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 3.18-stable review patch. If anyone has any objections, please let me know. ------------------ From: James Smart [ Upstream commit 0ef01a2d95fd62bb4f536e7ce4d5e8e74b97a244 ] When running an mds diagnostic that passes frames with the switch, soft lockups are detected. The driver is in a CQE processing loop and has sufficient amount of traffic that it never exits the ring processing routine, thus the "lockup". Cap the number of elements in the work processing routine to 64 elements. This ensures that the cpu will be given up and the handler reschedule to process additional items. Signed-off-by: Dick Kennedy Signed-off-by: James Smart Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/scsi/lpfc/lpfc_sli.c | 7 +++++++ 1 file changed, 7 insertions(+) --- a/drivers/scsi/lpfc/lpfc_sli.c +++ b/drivers/scsi/lpfc/lpfc_sli.c @@ -3441,6 +3441,7 @@ lpfc_sli_handle_slow_ring_event_s4(struc struct hbq_dmabuf *dmabuf; struct lpfc_cq_event *cq_event; unsigned long iflag; + int count = 0; spin_lock_irqsave(&phba->hbalock, iflag); phba->hba_flag &= ~HBA_SP_QUEUE_EVT; @@ -3462,16 +3463,22 @@ lpfc_sli_handle_slow_ring_event_s4(struc if (irspiocbq) lpfc_sli_sp_handle_rspiocb(phba, pring, irspiocbq); + count++; break; case CQE_CODE_RECEIVE: case CQE_CODE_RECEIVE_V1: dmabuf = container_of(cq_event, struct hbq_dmabuf, cq_event); lpfc_sli4_handle_received_buffer(phba, dmabuf); + count++; break; default: break; } + + /* Limit the number of events to 64 to avoid soft lockups */ + if (count == 64) + break; } }