[i386/686-pae] PCI: Set pci=nobios by default

This commit is contained in:
Ben Hutchings 2016-02-16 02:50:51 +00:00
parent fcd5547ba0
commit 5427214b64
3 changed files with 29 additions and 0 deletions

1
debian/changelog vendored
View File

@ -35,6 +35,7 @@ linux (4.4.1-1) UNRELEASED; urgency=medium
- [amd64] efi: Build our own page table structure
- [i386/686-pae] mm: Fix types used in pgprot cacheability flags
translations
- [i386/686-pae] PCI: Set pci=nobios by default
[ Roger Shimizu ]
* Enable TTY_PRINTK as module (Closes: #814540).

View File

@ -0,0 +1,27 @@
From: Ben Hutchings <ben@decadent.org.uk>
Date: Tue, 16 Feb 2016 02:45:42 +0000
Subject: [i386/686-pae] PCI: Set pci=nobios by default
Forwarded: not-needed
CONFIG_PCI_GOBIOS results in physical addresses 640KB-1MB being mapped
W+X, which is undesirable for security reasons and will result in a
warning at boot now that we enable CONFIG_DEBUG_WX.
This can be overridden using the kernel parameter "pci=nobios", but we
want to disable W+X by default. Disable PCI BIOS probing by default;
it can still be enabled using "pci=bios".
---
--- a/arch/x86/pci/common.c
+++ b/arch/x86/pci/common.c
@@ -20,8 +20,8 @@
#include <asm/pci_x86.h>
#include <asm/setup.h>
-unsigned int pci_probe = PCI_PROBE_BIOS | PCI_PROBE_CONF1 | PCI_PROBE_CONF2 |
- PCI_PROBE_MMCONF;
+unsigned int pci_probe = PCI_PROBE_CONF1 | PCI_PROBE_CONF2 | PCI_PROBE_MMCONF |
+ (IS_ENABLED(CONFIG_X86_64) || IS_ENABLED(CONFIG_X86_PAE) ? 0 : PCI_PROBE_BIOS);
unsigned int pci_early_dump_regs;
static int pci_bf_sort;

View File

@ -131,3 +131,4 @@ bugfix/x86/x86-efi-hoist-page-table-switching-code-into-efi_cal.patch
bugfix/x86/x86-efi-build-our-own-page-table-structures.patch
bugfix/x86/x86-efi-setup-separate-efi-page-tables-in-kexec-path.patch
bugfix/x86/x86-mm-fix-types-used-in-pgprot-cacheability-flags-t.patch
debian/i386-686-pae-pci-set-pci-nobios-by-default.patch