From patchwork Tue Dec 3 22:35:20 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg Kroah-Hartman X-Patchwork-Id: 180758 Delivered-To: patch@linaro.org Received: by 2002:a92:3001:0:0:0:0:0 with SMTP id x1csp2160986ile; Tue, 3 Dec 2019 14:56:28 -0800 (PST) X-Google-Smtp-Source: APXvYqw4+5iF5ZDrjp+F7SBoXyC5Bv8WffBV8WbQitRPq3w+aCDg7AJ/YVsFt2tCUX1Pn4ZL0HWE X-Received: by 2002:a05:6830:551:: with SMTP id l17mr245994otb.282.1575413788496; Tue, 03 Dec 2019 14:56:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575413788; cv=none; d=google.com; s=arc-20160816; b=k/ykkEJcRAWyWvqaoccv6i2I7oYOsnUgqZghbk6yfEhC535KTT0d5BMBQ6xkBWcK+d JhWKf/u4cXHRKoMmoLduLIauo2+M9C/Wzz22RthxfzbJ2JAlqoIiZIpF0Y/tbhwhyr36 cwCj8WKHGlZcDurtz0arC6+UQxosoRI0dV31VsdBogriNqhN2hz22U1n6zsfkvxa4o2P IUnXdGE15Bf4dYEKNb3SOKaC/8Qk2IDWvaUjf3InvGp0pRAvaVbLB9WY0R0JGS/R5/YP +Pyys9Ms2bTiByGu832FCtV1G8tOSvuM7dVVfj5xQT3WPmgkSJIQUE/5eefgPn9r6a24 7tDg== 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=2+5TWvjupbRiJ86fX3hoMXgoppGyLSAQmxQhYRXNzxg=; b=fFbYzYbJojfHyI+qX992jCA3pahwYWXG2sICJKrLE/xtii8Pl1tT5E8pausOydIuco /m8H0b91l6qg6gUliqu7AW5+vEsczT+tB/YbjSGUeSZTSvxaf3NOzfPgcaa0cwIbwQZf TS+tpKgf8IT7ZqJ5dHkUuEVZRskgN7ydxPL4PjqH2py8HNtzzzyYNR5iBLIjQYHSfz39 aKwObRbbNklqbf0+wQO2Cc186gCcwsOv487UkL/0lBjOWN9LHnzIquoivWJREWwZjBFe /BTjLuMEJMLjXtk3SWvtoIVSWe2ukYlY14/2z7ycJnEU6E2ld0OWMgsS//OXi+xvBF/N 4yyw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=outDsUzG; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 63si2275605oih.74.2019.12.03.14.56.28; Tue, 03 Dec 2019 14:56:28 -0800 (PST) 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=@kernel.org header.s=default header.b=outDsUzG; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730143AbfLCW41 (ORCPT + 15 others); Tue, 3 Dec 2019 17:56:27 -0500 Received: from mail.kernel.org ([198.145.29.99]:51468 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730428AbfLCW40 (ORCPT ); Tue, 3 Dec 2019 17:56:26 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.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 16891214AF; Tue, 3 Dec 2019 22:56:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1575413785; bh=HtPp8zOK5oiK3coHwNOGOpHkANIkVBWdeaQA0EEL6+w=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=outDsUzGTYMv0XytU2Cd2TEzdY5+wKzm4IiH8qTjQ7d5jNXrZU8RW1+eVWl+tagHl IUPizMQtdd6mWAKybJWeg/RWYT953hsWn9rGAFpiG91M1Em1efpsUrvceqxTer6Dsd N+PRLkEECUATgKVKveNW+pVpoSWSwylepvGoGZIY= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jian Luo , John Garry , "Martin K. Petersen" , Sasha Levin Subject: [PATCH 4.19 254/321] scsi: libsas: Check SMP PHY control function result Date: Tue, 3 Dec 2019 23:35:20 +0100 Message-Id: <20191203223440.349454536@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191203223427.103571230@linuxfoundation.org> References: <20191203223427.103571230@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: John Garry [ Upstream commit 01929a65dfa13e18d89264ab1378854a91857e59 ] Currently the SMP PHY control execution result is checked, however the function result for the command is not. As such, we may be missing all potential errors, like SMP FUNCTION FAILED, INVALID REQUEST FRAME LENGTH, etc., meaning the PHY control request has failed. In some scenarios we need to ensure the function result is accepted, so add a check for this. Tested-by: Jian Luo Signed-off-by: John Garry Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/libsas/sas_expander.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) -- 2.20.1 diff --git a/drivers/scsi/libsas/sas_expander.c b/drivers/scsi/libsas/sas_expander.c index f9d4a24c14b5a..3e74fe9257617 100644 --- a/drivers/scsi/libsas/sas_expander.c +++ b/drivers/scsi/libsas/sas_expander.c @@ -614,7 +614,14 @@ int sas_smp_phy_control(struct domain_device *dev, int phy_id, } res = smp_execute_task(dev, pc_req, PC_REQ_SIZE, pc_resp,PC_RESP_SIZE); - + if (res) { + pr_err("ex %016llx phy%02d PHY control failed: %d\n", + SAS_ADDR(dev->sas_addr), phy_id, res); + } else if (pc_resp[2] != SMP_RESP_FUNC_ACC) { + pr_err("ex %016llx phy%02d PHY control failed: function result 0x%x\n", + SAS_ADDR(dev->sas_addr), phy_id, pc_resp[2]); + res = pc_resp[2]; + } kfree(pc_resp); kfree(pc_req); return res;