Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp400084imm; Wed, 11 Jul 2018 04:37:03 -0700 (PDT) X-Google-Smtp-Source: AAOMgpc80Q6dNyzs7uoYB/e7PRcJlbQkS/g5TDYYlFu0gDWif4Lub7UjHKgkoS1FnobFcDuXMisF X-Received: by 2002:a62:9849:: with SMTP id q70-v6mr29588493pfd.178.1531309023296; Wed, 11 Jul 2018 04:37:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531309023; cv=none; d=google.com; s=arc-20160816; b=D6WI+/VoFRfopsnLeZM+UR/msObV6kNGwLa9Y9/ISnOJuKhGM0hTKGlAlgktSmQzKa Dh/M++r+j8XcT1yI1IBKLchIutOAmoblsuntA7eW2O1xY5H9t49ZzK1WQrKyWt+BM4cH ZEIwpq2VCNboqgl1N3pKqxlaAE+/c+W5JqUtNtjE2UnQrqZn0gVoJbHXJsmLacR/dYpm PXL0cPFBNAU2ge5FlXnS8tdAguuSFBqZtgio8mYn/7CG3BFuiuhoCS3Q4ULDrkZCaNQG z1GwtUgOUvdnwiK5ld1elFJkUvIbf+4mVnqobDtvti3Dki3yCFlw56eiebVfefBf8TJr 7wjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:arc-authentication-results; bh=qR2aXv88isIdJrKcC3PxsMfVhCoZRpQAzxjCbHAoc2o=; b=Bem2iBq2wpiqjYQjd8Ox90kk45ChZPzEwV4o4pvdy0LdGk0+dxa9cmqd5mxh92yhPC bhzrfz+6/fgAzzjOJ26QeRM+Th9XWtyxl925vXWZyN1QL51natNeZK9nlQ+8XeyW5Kye 16Wi6BMPv0/ZVvv6qFcL0SolL9moYGsCoD9ck/xcDba0dWu3V+fVefrvm4+qumWtETRi /9PF7F4gT07HzFz+ZeDgCMi/1QQQrU6kJZA80mqA9q4+4am4s+RH2VoMCiU1b32BM1NL 8vNg+oMnxffjcf05WD3LS53G+OIqgnk9B4kXg9Kx7KqB9IvSlc9fpc3G6ZYy/AJeAWIz obaQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail (test mode) header.i=@8bytes.org header.s=mail-1 header.b=NbKlaUsS; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t25-v6si405067pgm.601.2018.07.11.04.36.47; Wed, 11 Jul 2018 04:37:03 -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=fail (test mode) header.i=@8bytes.org header.s=mail-1 header.b=NbKlaUsS; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387411AbeGKLhi (ORCPT + 99 others); Wed, 11 Jul 2018 07:37:38 -0400 Received: from 8bytes.org ([81.169.241.247]:37318 "EHLO theia.8bytes.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732832AbeGKLd7 (ORCPT ); Wed, 11 Jul 2018 07:33:59 -0400 Received: by theia.8bytes.org (Postfix, from userid 1000) id 3B759709; Wed, 11 Jul 2018 13:29:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=8bytes.org; s=mail-1; t=1531308600; bh=njQZX63V8jS0zJ0D8ojNVJhoV+y1mqOjk+joS4saPAg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=NbKlaUsS5y1q/J4BBAcwxuO/NYpasVb/8ZaCTl9O7T1e2TBpxOY7Bguh/pwl7nk4l yETZ9OFX+551L7wB2OtYVLAxnvxM1XoZjbEK+4L4lY4E7PqOeopRTSizqlKs8Rbozh 3PG1mw0v9ikGOs0LLa2zwQ8sIcT8/xTM3A8DWgAu0tKUM1+NQ3I0nyETL7T5927BXO J+pIABN1tfr1lR2Krv/rMSDYc849I9pv646DYnfsm7llBQt2ud2Ae8NhqsfZE4+Tq2 ZSuI25n8o7jhfSyHGpnkW2q3Yi4SiRzZfxH1ZaonD9HiKsSiJihEJjd+r20NoiHTB4 O+zINMJAX4kUg== From: Joerg Roedel To: Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" Cc: x86@kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Linus Torvalds , Andy Lutomirski , Dave Hansen , Josh Poimboeuf , Juergen Gross , Peter Zijlstra , Borislav Petkov , Jiri Kosina , Boris Ostrovsky , Brian Gerst , David Laight , Denys Vlasenko , Eduardo Valentin , Greg KH , Will Deacon , aliguori@amazon.com, daniel.gruss@iaik.tugraz.at, hughd@google.com, keescook@google.com, Andrea Arcangeli , Waiman Long , Pavel Machek , "David H . Gutteridge" , jroedel@suse.de, joro@8bytes.org Subject: [PATCH 05/39] x86/entry/32: Unshare NMI return path Date: Wed, 11 Jul 2018 13:29:12 +0200 Message-Id: <1531308586-29340-6-git-send-email-joro@8bytes.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1531308586-29340-1-git-send-email-joro@8bytes.org> References: <1531308586-29340-1-git-send-email-joro@8bytes.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Joerg Roedel NMI will no longer use most of the shared return path, because NMI needs special handling when the CR3 switches for PTI are added. This patch prepares for that. Signed-off-by: Joerg Roedel --- arch/x86/entry/entry_32.S | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S index d35a69a..571209e 100644 --- a/arch/x86/entry/entry_32.S +++ b/arch/x86/entry/entry_32.S @@ -1017,7 +1017,7 @@ ENTRY(nmi) /* Not on SYSENTER stack. */ call do_nmi - jmp .Lrestore_all_notrace + jmp .Lnmi_return .Lnmi_from_sysenter_stack: /* @@ -1028,7 +1028,11 @@ ENTRY(nmi) movl PER_CPU_VAR(cpu_current_top_of_stack), %esp call do_nmi movl %ebx, %esp - jmp .Lrestore_all_notrace + +.Lnmi_return: + CHECK_AND_APPLY_ESPFIX + RESTORE_REGS 4 + jmp .Lirq_return #ifdef CONFIG_X86_ESPFIX32 .Lnmi_espfix_stack: -- 2.7.4