From patchwork Wed Dec 4 17:49:14 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: 180818 Delivered-To: patch@linaro.org Received: by 2002:a92:3001:0:0:0:0:0 with SMTP id x1csp924818ile; Wed, 4 Dec 2019 09:57:38 -0800 (PST) X-Google-Smtp-Source: APXvYqyFSxgooFTS+/8PJAxGW/Hhf2Bj5RYKnDUbsoi3Rl3z+6Ho0cek9MFbRF4kaJVX/8rGZ6r6 X-Received: by 2002:a54:4085:: with SMTP id i5mr3739089oii.17.1575482258579; Wed, 04 Dec 2019 09:57:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575482258; cv=none; d=google.com; s=arc-20160816; b=o1JybhN4N3XSU++BjieGf5BqRi/FlhE91g5N42k6QREo07TuD/HKrpR8nJ/vRJZO3R kzyVIXsluLDhIuY5hPhMa/Ek0RYARsRvvurokSe0cNerxzXuBMNh069XzqkCDAm+2fni h8SUnE0gDA9rTXeRhyyR/0qTRk6SbCOO20EVe72dgUiWdBe/dqnR4LIjKch7ng5FetgU xBUes5Bpbn3C8XqzZBEBFpXmj1JJtkhJH6oOOvV2JRDVP0t8mn4nAxRSOWeEJApYL72N XRfRIVzqNg7Zn6WM9j0kuFVVRV7eDlVStRyWgxsYBhCxel/65Gu9vJI5CzVrcnmh40Zj ALhA== 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=feuET2+A44CNNUvdvIojUz+ckpQse7+6r9RGmbmKqFs=; b=d9I0uH1kHYaUyKZWvm21KF8A34BjvBPEZeBD6HGxFWvh6gL7O3NKd4tYeTySi/pqlJ 3APNn2UjQVfwZcBKJUB5MvonDFl2EvSnxbhWSYKB25ycM2TNR7PMGlGYIJA6kYIcRfBT 7auiDuLBCgWvj9YpW0C3KCePRtoMEvTJyf6+XDOFIykLmI6vyR0SA80rHjnN7UU+5DfU 3OvVh0pHCPEs4x5rDtUWgRPXODlMRDb+3TeItn6PXOQighvG8gdpPJC0rg9RNNyhYNcF 3IMTqzeyf9YJatIQVi4o3Fq0d+YrQmDk4/F3191MqRsje+UOMX37UzmrcTAPx8WUv3NE 84Qw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=joItWs5k; 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 u4si3480283oiv.62.2019.12.04.09.57.38; Wed, 04 Dec 2019 09:57:38 -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=joItWs5k; 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 S1728321AbfLDR5h (ORCPT + 15 others); Wed, 4 Dec 2019 12:57:37 -0500 Received: from mail.kernel.org ([198.145.29.99]:58612 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728311AbfLDR5g (ORCPT ); Wed, 4 Dec 2019 12:57:36 -0500 Received: from localhost (unknown [217.68.49.72]) (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 B370D2081B; Wed, 4 Dec 2019 17:57:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1575482256; bh=+4ZYxgp6JPeEo+Ag+AOKVeFQr15T9Pdm9jbIOQcVegU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=joItWs5kKSpB99nZCpMWH63l1R3FRvun2eUrFQyP6WTIJFGGEbbXmqarfmGsyjjXh 8dDxu+lu9n6bNCBrQNnOtfFWc2sn3JRY0JpEVaAlkkBJIsb4aPsECVoxrQiG5ctYva XWWcr99ZHc55KnzIWoWt8bT4+T+ErWN6iaeKReqE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Steve Capper , Will Deacon , Suzuki K Poulose , Sasha Levin Subject: [PATCH 4.4 14/92] arm64: smp: Handle errors reported by the firmware Date: Wed, 4 Dec 2019 18:49:14 +0100 Message-Id: <20191204174330.241834671@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191204174327.215426506@linuxfoundation.org> References: <20191204174327.215426506@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: Suzuki K Poulose [ Upstream commit f357b3a7e17af7736d67d8267edc1ed3d1dd9391 ] The __cpu_up() routine ignores the errors reported by the firmware for a CPU bringup operation and looks for the error status set by the booting CPU. If the CPU never entered the kernel, we could end up in assuming stale error status, which otherwise would have been set/cleared appropriately by the booting CPU. Reported-by: Steve Capper Cc: Will Deacon Signed-off-by: Suzuki K Poulose Signed-off-by: Will Deacon Signed-off-by: Sasha Levin --- arch/arm64/kernel/smp.c | 1 + 1 file changed, 1 insertion(+) -- 2.20.1 diff --git a/arch/arm64/kernel/smp.c b/arch/arm64/kernel/smp.c index 03c0946b79d20..7e90f429f7e5c 100644 --- a/arch/arm64/kernel/smp.c +++ b/arch/arm64/kernel/smp.c @@ -115,6 +115,7 @@ int __cpu_up(unsigned int cpu, struct task_struct *idle) } } else { pr_err("CPU%u: failed to boot: %d\n", cpu, ret); + return ret; } secondary_data.stack = NULL; From patchwork Wed Dec 4 17:50:14 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: 180822 Delivered-To: patch@linaro.org Received: by 2002:a92:3001:0:0:0:0:0 with SMTP id x1csp927505ile; Wed, 4 Dec 2019 10:00:11 -0800 (PST) X-Google-Smtp-Source: APXvYqy4VMrJPe8me8TIWYqpAWdbbtKo9GP3CpY8OrP/ZBTjS1X/yz8BpYYqJKFQntw/9MrltsaJ X-Received: by 2002:a9d:6f11:: with SMTP id n17mr3397368otq.126.1575482411682; Wed, 04 Dec 2019 10:00:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575482411; cv=none; d=google.com; s=arc-20160816; b=M9CFShrdR3j0os+jsDoaVWT6sgmNIYjURBkUFrAzDd0NOHu5Gci5BosWV73Wmdvdsy BUdLA50DkI/pEKvHboHWEvo43Qmr/RUqEIcUWBMA0uQXAYTpW8G1Uzm1ue8ZeVGN5/Zo M2vN9Z7s3rXCWmsQX0mO6WyZF/xntHffgwIR0Zxtol0K8qz2O6/ws1pIDIRxploNhsQP c+PtMuAGztF6bRLQ+NITfUvZBKDpXIw0Brwpt0T0th8cjmduB1ohLC8hqmvGsW7cmOWh aAOnZBvM9b25j1/4qZF5tOHGX7hlgKyxPtH4wDuLm0mQKTMEUdhsyJsZwYrdiGoDfnmf fJRQ== 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=Bxfp2O+s/oo66mvXtDqgd2IZxFiiHqGaw9pUveLOYVs=; b=q/HlV5IccajH+hLE7MVFxV+snImSphN5gBL9ppIHXkNdOTI6dehClF4UubDdrO/j4I 85AwmqEtFk9S0dNNxjTe2zehmXszL5/XV0kKMSHWK0J3zUKWOv2H8y/metXUCAyZ6njh ueWJ+d3sQSUfJ15RBn9F7CM1g594Jnl7Z6DOO6bs5e8HChwUSHpLIhO186CM37TW70Vs q26ibFqkmUuJhbMYoWiNxLbBtjb3ghJRb+3Yup/dMkF5nyzMSnpNDaSKNoWE7pNn3qIX L/7cd/cs477qqg6qjm2i/wMdUZqgd7YBKM7v5iRex6YH4gO/ZVPb8mu5e1rQ/6lcmaGZ AxKQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=vkTMN6v8; 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 o12si3699461otk.323.2019.12.04.10.00.11; Wed, 04 Dec 2019 10:00:11 -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=vkTMN6v8; 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 S1729262AbfLDSAJ (ORCPT + 15 others); Wed, 4 Dec 2019 13:00:09 -0500 Received: from mail.kernel.org ([198.145.29.99]:38006 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729272AbfLDSAH (ORCPT ); Wed, 4 Dec 2019 13:00:07 -0500 Received: from localhost (unknown [217.68.49.72]) (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 45E352081B; Wed, 4 Dec 2019 18:00:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1575482406; bh=F8bm6cUbhQzAHQ+PL99yZE/aTt2ybXW/03/U7caOBbs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=vkTMN6v8BxD5xY0yrBIvshFeHsUoLqnOSIiB9F6Tn99F4XWeT3kXUooSIy7fXKnx+ J6avvxy+B6CWZaalaHXj4g5u2RvK8lpbwtjvDR43AM0lmBr+TXfoMXYzlgZZTJ2zUF cwu/Hve6C5hopSfHjm/QRNcbq+P0zJaVlCdnFC1w= 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.4 74/92] scsi: libsas: Check SMP PHY control function result Date: Wed, 4 Dec 2019 18:50:14 +0100 Message-Id: <20191204174334.726112310@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191204174327.215426506@linuxfoundation.org> References: <20191204174327.215426506@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 b7e4493d3dc16..7e8274938a3ee 100644 --- a/drivers/scsi/libsas/sas_expander.c +++ b/drivers/scsi/libsas/sas_expander.c @@ -603,7 +603,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;