Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2984177imu; Mon, 19 Nov 2018 08:59:45 -0800 (PST) X-Google-Smtp-Source: AJdET5ffM5IkNV8j4MS7pVBb81H2v6q+A+rvvcgCX+NJSOMEbCE+OiBsYddvVtCoxnz9HJP+bYhL X-Received: by 2002:a63:9749:: with SMTP id d9mr20398808pgo.415.1542646785290; Mon, 19 Nov 2018 08:59:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542646785; cv=none; d=google.com; s=arc-20160816; b=FGzqcnkh0eV/wiI1bb4LCZYELBXdx5hKHS+XguEULGMv43FWhh2gS5r3NFtZ5mXOy8 /LTFWmmr6+dLR+L8gpF9uvW0uKUQE6A4bxDkQVTxZQvlg26Dmbkq3/LA/9DYtGxyfr9i Z6GwA6Zig0PygufWyRKFgSCEtjt/rbfJ8+S7tBX6r4/u6gIdL8WEC/RdvL4OZEetoJ7N 2qFoCQu3F2d+RLgMw9O63kkuu1FJ/EfsNOBhkUVVHSgL5dG3djie9i2hcv7EKLtK2Swn R17wiKi7zm/7p4BpqvoVrtgnp3AzmHDyxWWi+RM6DnhDVJynaLlWxP3z9l9czdw9fXG3 opWA== 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=p9L1OiCzWJRT7mNh2qvsKRBGZgRB29VYRbAloYK7Ikw=; b=T5Rc6qfyQL2/8Mqdu41Oxtl9AW5q5LcEqGdgeZaOrZVqXka5082ZbY31grIojV2Vpv fdBj/C90TdTgQD65baoOpdKn8ZIyhUOYDsn5fh0ufHez6kaZ8gVtDntmHy9GSEDiBUQ6 WKid5uFGrBqZpmBb7cagjAsWH0+89DQX4d77hdr/Dlh67h84+n8JC7B6nxBnHlLcQ/vM hupsX2ZWZnXZ2Tk8FkMwL+DSoTKDRt9CIvQcVP6qdXAEHcgaMFk4cEhGx3Z/bOWrBHqB 1Dn5JHMenQhqFX+KHzEGfhth06fR9v0ggeCvtIXG1Fewsw1mxeqRPY70k72qEWUFw3x8 2bFg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=hUF6KiNB; 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 h80-v6si40708910pfj.112.2018.11.19.08.59.30; Mon, 19 Nov 2018 08:59:45 -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=hUF6KiNB; 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 S2404571AbeKTDVu (ORCPT + 99 others); Mon, 19 Nov 2018 22:21:50 -0500 Received: from mail.kernel.org ([198.145.29.99]:33324 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2403956AbeKTDVt (ORCPT ); Mon, 19 Nov 2018 22:21:49 -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 D845621104; Mon, 19 Nov 2018 16:57:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1542646654; bh=yRpa3Hh+UugcmEAIHj8BtsgegRs09+Pvt13PKhkl2TQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hUF6KiNBxsnR6TDnqbhE3Fr8bcoSy9YZLEPvT/YQnFNNPROCW19r2cfSMd+acGSiP bRADHOqD0YYdL/ayXIyatMMDShYZZDpWq8DTXfbrTnAJCDHae1lcE9DSHVf+bLG170 5/BNxJv4ReA4AU0R/mF/eisSVJPIa6wHBecBCUS4= 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 4.4 040/160] scsi: lpfc: Correct soft lockup when running mds diagnostics Date: Mon, 19 Nov 2018 17:27:59 +0100 Message-Id: <20181119162635.094683463@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181119162630.031306128@linuxfoundation.org> References: <20181119162630.031306128@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 4.4-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 @@ -3485,6 +3485,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; @@ -3506,16 +3507,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; } }