Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp748894ybl; Wed, 4 Dec 2019 10:12:43 -0800 (PST) X-Google-Smtp-Source: APXvYqzXC0nZDPbqSEDqogY1CuKbT+r8mJ0y0YIDTv4BzWFBCNs+pffUMmfJQDvSsfkRnv9npmCx X-Received: by 2002:a54:4f8e:: with SMTP id g14mr3646952oiy.144.1575483163858; Wed, 04 Dec 2019 10:12:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575483163; cv=none; d=google.com; s=arc-20160816; b=F9EieYeZZRg1ZkcjCs4Vl23sk+2AjZrDxR5rPAvrB6vdP7wMEme68GhFU0netJ7ev5 6eA2jA5N7iJH8ExkiPnmjKTfEuS7nAH/YOTbcbB1O56ItLUMuEHIMcVyWkOjZjCgVSGi V4d5QX28pQhAbn2Qb1AUFFChNJ0l8POPKaazWDgSuK0ZhMKiUSLyr7LzDHzn/H638Gk6 fXT3J1v1UXyBHdRrecUHLXCKdYI8fNNKXsOjwTp/NWi1ZvAjQN/r6BqvCb0+ENILeN5k pt3cZGSbB/UgWADOaZkuHz90BziJ5UWOciGfzKsJcjwgUY4M81G33vzjrpLYX5wRUTDs t1Pw== 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=H/i84qZ8pUljVMQ84z10UkDgDRocCAgRPcT+3R6c3yE=; b=t0A8el7ghYWUYW0YvPlFM1RtZ3+rM2rPdTYK7VBhY1MpD6WlqZS7vxmtx2njbKtpcf VJJ/5sFXS4H12VD7hG8ysfuJ9aSD12H7XdhmA7UO1Yqt2hFxVnyY4ITOHnMKSs3NDZtn ntPxAu3aLrLzGIQLqYNoUECmxNyk1fnw4kLWGuNFAy/FIsn4F4vygnl/U0RQ8jgF+Nbt p1b4xToH/UAoguYO0EXSST9HESUgscusDwE0URpN0iOOKU23pcM1o6wL+Lx1OgTe25/2 KkrXV39wVzZj4loXz+e6JADSWCnU9M1OzJ2xpFx749MkPOadGWFdoNrOWpdwBJ1hRsx6 hZSw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=XA2ID4Pg; 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 p129si3503241oig.118.2019.12.04.10.12.30; Wed, 04 Dec 2019 10:12:43 -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=XA2ID4Pg; 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 S1731259AbfLDSK0 (ORCPT + 99 others); Wed, 4 Dec 2019 13:10:26 -0500 Received: from mail.kernel.org ([198.145.29.99]:37576 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731257AbfLDSKY (ORCPT ); Wed, 4 Dec 2019 13:10:24 -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 2F0DE206DF; Wed, 4 Dec 2019 18:10:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1575483023; bh=wwf59jvlmgAHxBsSVCN3Drer6FJuWS1VyOrFqmPPIZI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XA2ID4PgNDqMfteUxfkxqkwsTtwjWrVTOQAE+9bgegOT8qDOu1pv2BO5UbqnjqOlF 5oFr9RUCloEGzMqa9cQFGDPmivLltw5MTP7vLjILhQoCHHq9N+4kgyt0ZPq6bjTK/x efbdK/UVLhqgxtWR9ap0lg9dEvufgf12DQS3WXsI= 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.9 020/125] arm64: smp: Handle errors reported by the firmware Date: Wed, 4 Dec 2019 18:55:25 +0100 Message-Id: <20191204175318.319074728@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191204175308.377746305@linuxfoundation.org> References: <20191204175308.377746305@linuxfoundation.org> User-Agent: quilt/0.66 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 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(+) diff --git a/arch/arm64/kernel/smp.c b/arch/arm64/kernel/smp.c index f0c41524b052f..b2d6de9f6f4fb 100644 --- a/arch/arm64/kernel/smp.c +++ b/arch/arm64/kernel/smp.c @@ -173,6 +173,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; -- 2.20.1