linux_dsm_epyc7002/drivers
Ard Biesheuvel a470552ee8 efi: Don't attempt to map RCI2 config table if it doesn't exist
Commit:

  1c5fecb612 ("efi: Export Runtime Configuration Interface table to sysfs")

... added support for a Dell specific UEFI configuration table, but
failed to take into account that mapping the table should not be
attempted unless the table actually exists. If it doesn't exist,
the code usually fails silently unless pr_debug() prints are
enabled. However, on 32-bit PAE x86, the splat below is produced due
to the attempt to map the placeholder value EFI_INVALID_TABLE_ADDR
which we use for non-existing UEFI configuration tables, and which
equals ULONG_MAX.

   memremap attempted on mixed range 0x00000000ffffffff size: 0x1e
   WARNING: CPU: 1 PID: 1 at kernel/iomem.c:81 memremap+0x1a3/0x1c0
   Modules linked in:
   CPU: 1 PID: 1 Comm: swapper/0 Not tainted 5.4.2-smp-mine #1
   Hardware name: Hewlett-Packard HP Z400 Workstation/0B4Ch, BIOS 786G3 v03.61 03/05/2018
   EIP: memremap+0x1a3/0x1c0
  ...
   Call Trace:
    ? map_properties+0x473/0x473
    ? efi_rci2_sysfs_init+0x2c/0x154
    ? map_properties+0x473/0x473
    ? do_one_initcall+0x49/0x1d4
    ? parse_args+0x1e8/0x2a0
    ? do_early_param+0x7a/0x7a
    ? kernel_init_freeable+0x139/0x1c2
    ? rest_init+0x8e/0x8e
    ? kernel_init+0xd/0xf2
    ? ret_from_fork+0x2e/0x38

Fix this by checking whether the table exists before attempting to map it.

Reported-by: Richard Narron <comet.berkeley@gmail.com>
Tested-by: Richard Narron <comet.berkeley@gmail.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Cc: linux-efi@vger.kernel.org
Fixes: 1c5fecb612 ("efi: Export Runtime Configuration Interface table to sysfs")
Link: https://lkml.kernel.org/r/20191210090945.11501-2-ardb@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2019-12-10 12:13:02 +01:00
..
accessibility
acpi libnvdimm for 5.5 2019-12-01 18:43:25 -08:00
amba
android compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
ata pci-v5.5-changes 2019-12-03 13:58:22 -08:00
atm
auxdisplay
base drivers/base/memory.c: drop the mem_sysfs_mutex 2019-12-01 12:59:04 -08:00
bcma
block for-linus-20191129 2019-12-01 18:26:56 -08:00
bluetooth Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk 2019-11-22 13:35:20 +01:00
bus Staging / IIO patches for 5.5-rc1 2019-11-27 10:57:52 -08:00
cdrom cdrom: respect device capabilities during opening action 2019-11-26 13:02:24 -07:00
char compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
clk This merge window we have one small clk provider API in the core framework and 2019-12-01 16:06:02 -08:00
clocksource Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-12-03 12:20:25 -08:00
connector
counter
cpufreq Power management updates for 5.5-rc1 2019-11-26 19:06:44 -08:00
cpuidle cpuidle: Pass exit latency limit to cpuidle_use_deepest_state() 2019-11-20 11:46:18 +01:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2019-12-02 17:23:21 -08:00
dax libnvdimm for 5.5 2019-12-01 18:43:25 -08:00
dca
devfreq
dio
dma dmaengine: Fix Kconfig indentation 2019-11-22 11:16:26 +05:30
dma-buf compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
edac EDAC/altera: Use the Altera System Manager driver 2019-11-22 10:18:29 +01:00
eisa
extcon Char/Misc driver patches for 5.5-rc1 2019-11-27 10:53:50 -08:00
firewire FireWire (IEEE 1394) subsystem updates: 2019-12-02 14:13:00 -08:00
firmware efi: Don't attempt to map RCI2 config table if it doesn't exist 2019-12-10 12:13:02 +01:00
fpga
fsi
gnss
gpio This is the bulk of GPIO changes for the v5.5 kernel cycle 2019-12-01 17:56:50 -08:00
gpu pci-v5.5-changes 2019-12-03 13:58:22 -08:00
greybus
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid 2019-12-01 18:20:54 -08:00
hsi
hv Merge branch 'akpm' (patches from Andrew) 2019-12-01 20:36:41 -08:00
hwmon compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
hwspinlock
hwtracing compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
i2c Merge branch 'i2c/for-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2019-12-01 18:29:36 -08:00
i3c
ide compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
idle
iio chrome platform changes for v5.5 2019-12-03 14:37:12 -08:00
infiniband compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
input chrome platform changes for v5.5 2019-12-03 14:37:12 -08:00
interconnect
iommu pci-v5.5-changes 2019-12-03 13:58:22 -08:00
ipack
irqchip pci-v5.5-changes 2019-12-03 13:58:22 -08:00
isdn compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
leds Merge tag 'leds-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds 2019-12-01 16:09:28 -08:00
lightnvm
macintosh powerpc updates for 5.5 2019-11-30 14:35:43 -08:00
mailbox mailbox changes for v5.5 2019-12-01 18:42:02 -08:00
mcb
md - Fix DM core to disallow stacking request-based DM on partitions. 2019-11-25 11:53:26 -08:00
media compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
memory
memstick pci-v5.5-changes 2019-12-03 13:58:22 -08:00
message
mfd chrome platform changes for v5.5 2019-12-03 14:37:12 -08:00
misc pci-v5.5-changes 2019-12-03 13:58:22 -08:00
mmc Driver core patches for 5.5-rc1 2019-11-27 11:06:20 -08:00
mtd TTY/Serial patches for 5.5-rc1 2019-12-03 14:09:14 -08:00
mux
net TTY/Serial patches for 5.5-rc1 2019-12-03 14:09:14 -08:00
nfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-11-22 16:27:24 -08:00
ntb
nubus
nvdimm libnvdimm for 5.5 2019-12-01 18:43:25 -08:00
nvme pci-v5.5-changes 2019-12-03 13:58:22 -08:00
nvmem Char/Misc driver patches for 5.5-rc1 2019-11-27 10:53:50 -08:00
of Devicetree updates for v5.5: 2019-12-02 11:41:35 -08:00
opp
oprofile Printk changes for 5.5 2019-11-25 19:40:40 -08:00
parisc
parport
pci pci-v5.5-changes 2019-12-03 13:58:22 -08:00
pcmcia pcmcia: remove unused dprintk definition 2019-11-22 07:03:45 +01:00
perf
phy pci-v5.5-changes 2019-12-03 13:58:22 -08:00
pinctrl Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-12-03 09:29:50 -08:00
platform chrome platform changes for v5.5 2019-12-03 14:37:12 -08:00
pnp
power - Core Frameworks 2019-12-01 16:16:31 -08:00
powercap
pps
ps3
ptp Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-11-16 21:51:42 -08:00
pwm
rapidio
ras
regulator Merge branch 'regulator-5.5' into regulator-next 2019-11-22 19:56:20 +00:00
remoteproc remoteproc: stm32: fix probe error case 2019-11-18 20:35:16 -08:00
reset
rpmsg rpmsg updates for v5.5 2019-12-01 18:39:24 -08:00
rtc RTC for 5.5 2019-12-03 13:31:08 -08:00
s390 s390 updates for the 5.5 merge window #2 2019-12-03 12:50:00 -08:00
sbus
scsi pci-v5.5-changes 2019-12-03 13:58:22 -08:00
sfi
sh
siox
slimbus
soc Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-11-16 21:51:42 -08:00
soundwire
spi Merge branch 'spi-5.5' into spi-next 2019-11-22 19:56:35 +00:00
spmi
ssb
staging pci-v5.5-changes 2019-12-03 13:58:22 -08:00
target SCSI misc on 20191130 2019-12-02 13:37:02 -08:00
tc
tee
thermal platform-drivers-x86 for v5.5-1 2019-12-01 18:24:25 -08:00
thunderbolt thunderbolt: Power cycle the router if NVM authentication fails 2019-11-19 17:35:57 +01:00
tty TTY/Serial patches for 5.5-rc1 2019-12-03 14:09:14 -08:00
uio
usb pci-v5.5-changes 2019-12-03 13:58:22 -08:00
vfio pci-v5.5-changes 2019-12-03 13:58:22 -08:00
vhost compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
video pci-v5.5-changes 2019-12-03 13:58:22 -08:00
virt compat_ioctl: remove most of fs/compat_ioctl.c 2019-12-01 13:46:15 -08:00
virtio virtio_balloon: fix shrinker count 2019-11-20 02:15:57 -05:00
visorbus
vlynq
vme
w1
watchdog linux-watchdog 5.5-rc1 tag 2019-12-01 18:01:03 -08:00
xen pci-v5.5-changes 2019-12-03 13:58:22 -08:00
zorro
Kconfig
Makefile