From patchwork Mon Jul 19 14:52:20 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "gregkh@linuxfoundation.org" X-Patchwork-Id: 479963 Delivered-To: patch@linaro.org Received: by 2002:a02:c94a:0:0:0:0:0 with SMTP id u10csp4249156jao; Mon, 19 Jul 2021 08:47:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz0hDDTcJUxHN9bXpzmmfXlyFUCYxhn4WQB/PoMDi4hXFlNsSYMTfyoRVxgdZgk+YNaD/tk X-Received: by 2002:a50:fb95:: with SMTP id e21mr35511733edq.65.1626709619864; Mon, 19 Jul 2021 08:46:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626709619; cv=none; d=google.com; s=arc-20160816; b=i9+MDc79hhNBC9FxgkRkCgTccxIgmBA8YBQt1gil3ovk91AbW7ULvDupzO8sp+2e4c cVE7cgXNMVec1ez1kW9p5kufytYoCR5ZJW1qENQZo8kkSSjz5YqVRrytlhCO5ZvtXXnf 9JmZiMjVXjVtsyH9HTnveCnmXfbLO1ureXDIKhErgO/9LTfC7wxe+SB9Riclw4/Q7Rlu Noj+r8hhyMyoCDoVNDAvHBew1V2I9MgJsqyAIGnB4fntUyltsBXPomQrPzGCQ6szvEPY Qj3hTjPwGqrQGl2z1MHDHlGf2REqVOa9KFDMhLgB+WGLCdvDFqMfSxbDyGiC52zCXe/R LfLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=h9dTulpE6RDJ4Hgwawfyx8jyHXnTYMSji8e5mpSppyQ=; b=cR3+M1LtzebNFaR6RXca6JGBTqu/vfDwHRsOxpc2t41ZnSnM7lOFAawRsQr1G9B1Qh HiR1FHxIcoXEyVsYhddRNzG0I7Dn7BGH66EMOlyDyXxkgC8MQPy9Lpd6Ghk13s/lnPDC ryxU+IXx5959nzdls/fdygvTfjCL1vxK566PONaEEiG716zCPmlm8RSPWNiMD+y2xYXF ZJpWkQm7dCWbcdQ4ahybUR3FCD/LVsTY3FpV0kdwla6IaxQzXKCnIsa4Ee+Tesjeaeu7 3IvxueHB+s+4hX+j76yc1xTfBEz36L4fALsgue9Q1tMNZ2EpsU+OtVnohz3slUMsbcQ8 vw+Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=oiMkPwbo; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z11si402714edb.95.2021.07.19.08.46.59; Mon, 19 Jul 2021 08:46:59 -0700 (PDT) Received-SPF: pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=oiMkPwbo; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245648AbhGSPGE (ORCPT + 12 others); Mon, 19 Jul 2021 11:06:04 -0400 Received: from mail.kernel.org ([198.145.29.99]:58902 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1343572AbhGSPCx (ORCPT ); Mon, 19 Jul 2021 11:02:53 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 92BF56120C; Mon, 19 Jul 2021 15:43:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626709384; bh=ycAtwHjZaMqYWtP+ts/7rOe4ByNeBQTzfJ4uZB7kg1c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oiMkPwboN7/LDvcdYlb2a5CbGrxlOMQgew4e2NZZpwVDraNjuem5Oa1clMnii/DFc euhljQtIsU4Z0TQ8wimkzGZxoXhC0z3JUJPnivigPuMldKcy7siJAv2TfrYXX3xHBB GzLXOGFpal2anVGDBGz/dHqFwFYGV63aXbxNukuE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Ming Lei , Bart Van Assche , John Garry , "Martin K. Petersen" , Sasha Levin Subject: [PATCH 4.19 329/421] scsi: core: Cap scsi_host cmd_per_lun at can_queue Date: Mon, 19 Jul 2021 16:52:20 +0200 Message-Id: <20210719144957.700171204@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210719144946.310399455@linuxfoundation.org> References: <20210719144946.310399455@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: John Garry [ Upstream commit ea2f0f77538c50739b9fb4de4700cee5535e1f77 ] The sysfs handling function sdev_store_queue_depth() enforces that the sdev queue depth cannot exceed shost can_queue. The initial sdev queue depth comes from shost cmd_per_lun. However, the LLDD may manually set cmd_per_lun to be larger than can_queue, which leads to an initial sdev queue depth greater than can_queue. Such an issue was reported in [0], which caused a hang. That has since been fixed in commit fc09acb7de31 ("scsi: scsi_debug: Fix cmd_per_lun, set to max_queue"). Stop this possibly happening for other drivers by capping shost cmd_per_lun at shost can_queue. [0] https://lore.kernel.org/linux-scsi/YHaez6iN2HHYxYOh@T590/ Link: https://lore.kernel.org/r/1621434662-173079-1-git-send-email-john.garry@huawei.com Reviewed-by: Ming Lei Reviewed-by: Bart Van Assche Signed-off-by: John Garry Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/hosts.c | 3 +++ 1 file changed, 3 insertions(+) -- 2.30.2 diff --git a/drivers/scsi/hosts.c b/drivers/scsi/hosts.c index 2c085e463243..f3194d634f7f 100644 --- a/drivers/scsi/hosts.c +++ b/drivers/scsi/hosts.c @@ -218,6 +218,9 @@ int scsi_add_host_with_dma(struct Scsi_Host *shost, struct device *dev, goto fail; } + shost->cmd_per_lun = min_t(short, shost->cmd_per_lun, + shost->can_queue); + error = scsi_init_sense_cache(shost); if (error) goto fail;