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 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 39E31C433EF for ; Wed, 10 Nov 2021 10:56:55 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 26CAD61247 for ; Wed, 10 Nov 2021 10:56:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231510AbhKJK7l (ORCPT ); Wed, 10 Nov 2021 05:59:41 -0500 Received: from mail.ispras.ru ([83.149.199.84]:53892 "EHLO mail.ispras.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231248AbhKJK7i (ORCPT ); Wed, 10 Nov 2021 05:59:38 -0500 X-Greylist: delayed 585 seconds by postgrey-1.27 at vger.kernel.org; Wed, 10 Nov 2021 05:59:35 EST Received: from localhost.localdomain (unknown [80.240.223.29]) by mail.ispras.ru (Postfix) with ESMTPSA id EB4B640A2BCC; Wed, 10 Nov 2021 10:47:02 +0000 (UTC) From: Baskov Evgeniy To: Ard Biesheuvel Cc: Baskov Evgeniy , Borislav Petkov , Dave Hansen , Ingo Molnar , Jonathan Corbet , Thomas Gleixner , x86@kernel.org, linux-doc@vger.kernel.org, linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH RFC 4/5] efi: Add option for handling efi memory protection Date: Wed, 10 Nov 2021 13:46:12 +0300 Message-Id: <20211110104613.23881-5-baskov@ispras.ru> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211110104613.23881-1-baskov@ispras.ru> References: <20211110104613.23881-1-baskov@ispras.ru> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add option to enable handling strict page table permissions added in previous patches. Signed-off-by: Baskov Evgeniy --- drivers/firmware/efi/Kconfig | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/drivers/firmware/efi/Kconfig b/drivers/firmware/efi/Kconfig index 2c3dac5ecb36..f57a9c865dce 100644 --- a/drivers/firmware/efi/Kconfig +++ b/drivers/firmware/efi/Kconfig @@ -243,6 +243,23 @@ config EFI_DISABLE_PCI_DMA options "efi=disable_early_pci_dma" or "efi=no_disable_early_pci_dma" may be used to override this option. +config EFI_STRICT_PGTABLE + bool "Handle strict page table permissions in libstub" + depends on EFI_STUB && X86 + default y + help + Some firmware disables execution of memory allocated in boot loader + and/or lower megabyte of physical address space, since it is allowed + by specification. That prevents Linux kernel from booting. + + This option makes libstub either create temporary identity mapped + page tables with unset non-executable flag on x86_64 or just disable + paging altogether on i386 to overcome the issue. + + If firmware does not restrict permissions on identity page tables, + temporary page table creation may be disabled with kernel command + line option "efi=notemppt". + endmenu config EFI_EMBEDDED_FIRMWARE -- 2.33.1