From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B0E5CC433E0 for ; Thu, 2 Jul 2020 01:31:25 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 81C4E206BE for ; Thu, 2 Jul 2020 01:31:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1593653485; bh=/gmxHS3XLDyTXY59bVZQeIR8YytUDZlxFAMR595dCLM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=CWsQfkLjfVV9BKhLPc7QuC6Y3W2SjMfAYXmpnq0KI3q+13+icO1dGzQJRi7xPWlwC Az1eFmtGF6lWb7VNrChMJvrIfMbrffD107OgmVfmOj6SXAVeehCUA2NYxvIiB0v6W+ GE03ot8+v6BPkmSnaVFYWKhxqlIHhejyz5yKfVQU= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729294AbgGBBbY (ORCPT ); Wed, 1 Jul 2020 21:31:24 -0400 Received: from mail.kernel.org ([198.145.29.99]:58004 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729213AbgGBB0f (ORCPT ); Wed, 1 Jul 2020 21:26:35 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id AE39120899; Thu, 2 Jul 2020 01:26:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1593653195; bh=/gmxHS3XLDyTXY59bVZQeIR8YytUDZlxFAMR595dCLM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=JaFShhFHtkHl5HWXKym7/TIPlhJnWvqsrrfp1Z66sXSbmfydIbyIWeYvs0Pej8/I9 1JSABR+nqou9oNfPufOw5pJeKAmulaEfdHOQu5utgOdvcKr9EBGE9Ut4ZsNCbyT+yh XjgARXvgR8R02vXafIbWjAgWekxQPsca3fK18mrE= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Vasily Gorbik , Alexander Egorenkov , Heiko Carstens , Sasha Levin , linux-s390@vger.kernel.org Subject: [PATCH AUTOSEL 4.19 16/27] s390/kasan: fix early pgm check handler execution Date: Wed, 1 Jul 2020 21:26:04 -0400 Message-Id: <20200702012615.2701532-16-sashal@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200702012615.2701532-1-sashal@kernel.org> References: <20200702012615.2701532-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Vasily Gorbik [ Upstream commit 998f5bbe3dbdab81c1cfb1aef7c3892f5d24f6c7 ] Currently if early_pgm_check_handler is called it ends up in pgm check loop. The problem is that early_pgm_check_handler is instrumented by KASAN but executed without DAT flag enabled which leads to addressing exception when KASAN checks try to access shadow memory. Fix that by executing early handlers with DAT flag on under KASAN as expected. Reported-and-tested-by: Alexander Egorenkov Reviewed-by: Heiko Carstens Signed-off-by: Vasily Gorbik Signed-off-by: Heiko Carstens Signed-off-by: Sasha Levin --- arch/s390/kernel/early.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/s390/kernel/early.c b/arch/s390/kernel/early.c index e7e6608b996c6..ad88bed743954 100644 --- a/arch/s390/kernel/early.c +++ b/arch/s390/kernel/early.c @@ -155,6 +155,8 @@ static noinline __init void setup_lowcore_early(void) psw_t psw; psw.mask = PSW_MASK_BASE | PSW_DEFAULT_KEY | PSW_MASK_EA | PSW_MASK_BA; + if (IS_ENABLED(CONFIG_KASAN)) + psw.mask |= PSW_MASK_DAT; psw.addr = (unsigned long) s390_base_ext_handler; S390_lowcore.external_new_psw = psw; psw.addr = (unsigned long) s390_base_pgm_handler; -- 2.25.1