Received: by 2002:a5b:505:0:0:0:0:0 with SMTP id o5csp3386720ybp; Sun, 6 Oct 2019 10:48:14 -0700 (PDT) X-Google-Smtp-Source: APXvYqzFXnDD7ZIaPZkJM1baERZ1V+5A0jT393wr6L4FC9wK0b6kASU/YB5JOHiIh7F1Sd4xEACS X-Received: by 2002:a50:fd10:: with SMTP id i16mr26160473eds.239.1570384093892; Sun, 06 Oct 2019 10:48:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1570384093; cv=none; d=google.com; s=arc-20160816; b=YztrHEPxpvT5piJnvnN+jCsR9ZqgiUX/qZuf2tuiAfi4g0rrUhQKzM+K9yzgPC17IO HsnOS6D56LLp3tJ5dvGcVO+NgnibbEF/oLAfln2bbHe6cqROFQeD6b7cJxDt5lb5e4hr eMKJZd20Bc+MZ6S2CE0PCPIocs5KkLEdrrJkLuhK5yacuUitz8umaMwbmraWNTKa/vg1 93iVspuPxiB+BEIlagGXvZelMae/9mLctBFAGSdBIloIxIW8uZW3vdn3YAfTXyM5m2x8 4iIJa8VzV6aRRid/JzbLCw/laOf8Ll1526gPzEhBWF0V4/4bSGV4PfqDmJdGZensHL4f Khew== 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=jJyACMXCWNQeT6MrPrjqHKBZCAaMjp+zQdkH/NHndlo=; b=ZlB3zMOwif+eB57uHkKvWL96K2e6F+5hWYH8DfcC3xq6jb3KY5uYua3fS/qM/WGr1c seXJ4Zn3PmFalrJZoJ3fbmvQewArdGfv/gEo3XlerZAIWZ+6rMrqwU0aRZwWTW3Ltlxv CXvZ2Ve7tO5TY6FEp7NIXXlvsxS8rIHYqD7Z3a7QbOwojrCmb8VOWoAbTya2F+QVzcV4 ie3IoPcmmNf9aks4sVBttjcmpRnL/EsmbDFfYdgDsZYaz6ttxtTRybH8eepq/B9CwHqb chh2WPqkLsyMow2Bn+wBRQ3bZkZZImTP5nrG0yO8Uct/5lTVIfkuPBOP6tLBSW6Ef6+n 3xUQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xhgZXXsF; 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 w2si7402709edc.386.2019.10.06.10.47.50; Sun, 06 Oct 2019 10:48:13 -0700 (PDT) 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=xhgZXXsF; 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 S1731248AbfJFRll (ORCPT + 99 others); Sun, 6 Oct 2019 13:41:41 -0400 Received: from mail.kernel.org ([198.145.29.99]:41308 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730579AbfJFRlj (ORCPT ); Sun, 6 Oct 2019 13:41:39 -0400 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 AF9782053B; Sun, 6 Oct 2019 17:41:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1570383698; bh=EwefwZg1gkRd5D8AdLXuQmAzwpk0VAcJjXwCvpznLlA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=xhgZXXsFh60aclNlhFqaIKUusMUJojxLk8nNNd4nmfJ3SiCAB2CKj5Q1VtTMoMPz0 sw+9ME1Jowa2cz+3ylr55iVRY3ADKa7kErmtrEyDp1g8pnFid7o06FVt9uzeAyweeh twP+k7tr5v9XDkanNkImv+z0NafuhKtqNEkgOWlI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Nicholas Piggin , Michael Ellerman , Sasha Levin Subject: [PATCH 5.3 062/166] powerpc/64s/exception: machine check use correct cfar for late handler Date: Sun, 6 Oct 2019 19:20:28 +0200 Message-Id: <20191006171218.439787495@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20191006171212.850660298@linuxfoundation.org> References: <20191006171212.850660298@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: Nicholas Piggin [ Upstream commit 0b66370c61fcf5fcc1d6901013e110284da6e2bb ] Bare metal machine checks run an "early" handler in real mode before running the main handler which reports the event. The main handler runs exactly as a normal interrupt handler, after the "windup" which sets registers back as they were at interrupt entry. CFAR does not get restored by the windup code, so that will be wrong when the handler is run. Restore the CFAR to the saved value before running the late handler. Signed-off-by: Nicholas Piggin Signed-off-by: Michael Ellerman Link: https://lore.kernel.org/r/20190802105709.27696-8-npiggin@gmail.com Signed-off-by: Sasha Levin --- arch/powerpc/kernel/exceptions-64s.S | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S index 6ba3cc2ef8abc..36c8a3652cf3a 100644 --- a/arch/powerpc/kernel/exceptions-64s.S +++ b/arch/powerpc/kernel/exceptions-64s.S @@ -1211,6 +1211,10 @@ FTR_SECTION_ELSE ALT_FTR_SECTION_END_IFSET(CPU_FTR_HVMODE) 9: /* Deliver the machine check to host kernel in V mode. */ +BEGIN_FTR_SECTION + ld r10,ORIG_GPR3(r1) + mtspr SPRN_CFAR,r10 +END_FTR_SECTION_IFSET(CPU_FTR_CFAR) MACHINE_CHECK_HANDLER_WINDUP EXCEPTION_PROLOG_0 PACA_EXMC b machine_check_pSeries_0 -- 2.20.1