linux/drivers
Jisheng Zhang b5db73fb18
riscv: enable HAVE_ARCH_STACKLEAK
Add support for the stackleak feature. Whenever the kernel returns to user
space the kernel stack is filled with a poison value.

At the same time, disables the plugin in EFI stub code because EFI stub
is out of scope for the protection.

Tested on qemu and milkv duo:
/ # echo STACKLEAK_ERASING > /sys/kernel/debug/provoke-crash/DIRECT
[   38.675575] lkdtm: Performing direct entry STACKLEAK_ERASING
[   38.678448] lkdtm: stackleak stack usage:
[   38.678448]   high offset: 288 bytes
[   38.678448]   current:     496 bytes
[   38.678448]   lowest:      1328 bytes
[   38.678448]   tracked:     1328 bytes
[   38.678448]   untracked:   448 bytes
[   38.678448]   poisoned:    14312 bytes
[   38.678448]   low offset:  8 bytes
[   38.689887] lkdtm: OK: the rest of the thread stack is properly erased

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Charlie Jenkins <charlie@rivosinc.com>
Link: https://lore.kernel.org/r/20240623235316.2010-1-jszhang@kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
2024-07-26 05:50:47 -07:00
..
accel Merge tag 'drm-habanalabs-next-2024-06-23' of https://github.com/HabanaAI/drivers.accel.habanalabs.kernel into drm-next 2024-06-28 09:41:04 +10:00
accessibility
acpi Merge patch series "Add ACPI NUMA support for RISC-V" 2024-07-22 10:31:51 -07:00
amba
android binder: fix hang of unregistered readers 2024-07-12 11:31:37 +02:00
ata Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
atm
auxdisplay parport: Remove parport_driver.devmodel 2024-07-03 16:44:22 +02:00
base Merge patch series "Add ACPI NUMA support for RISC-V" 2024-07-22 10:31:51 -07:00
bcma
block virtio: features, fixes, cleanups 2024-07-19 11:57:55 -07:00
bluetooth virtio: features, fixes, cleanups 2024-07-19 11:57:55 -07:00
bus Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
cache
cdrom
cdx
char Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
clk This a large collection of clk driver updates and a handful of new SoC 2024-07-19 12:16:28 -07:00
clocksource clocksource/drivers/realtek: Add timer driver for rtl-otto platforms 2024-07-12 16:07:06 +02:00
comedi
connector
counter Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
cpufreq Power management updates for 6.11-rc1 2024-07-16 15:54:03 -07:00
cpuidle cpuidle: teo: Don't count non-existent intercepts 2024-07-01 18:58:55 +02:00
crypto virtio: features, fixes, cleanups 2024-07-19 11:57:55 -07:00
cxl cxl: documentation: add missing files to cxl driver-api 2024-06-25 14:45:27 -07:00
dax
dca dca: add missing MODULE_DESCRIPTION() macro 2024-07-03 16:40:41 +02:00
devfreq
dio
dma Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
dma-buf
dpll
edac - Make error checking of AMD SMN accesses more robust in the callers as 2024-07-15 19:53:07 -07:00
eisa
extcon
firewire
firmware riscv: enable HAVE_ARCH_STACKLEAK 2024-07-26 05:50:47 -07:00
fpga
fsi
gnss
gpio virtio: features, fixes, cleanups 2024-07-19 11:57:55 -07:00
gpu pci-v6.11-changes 2024-07-19 19:03:18 -07:00
greybus greybus: add missing MODULE_DESCRIPTION() macros 2024-07-03 16:40:35 +02:00
hid for-linus-2024071601 2024-07-17 17:28:31 -07:00
hsi
hte
hv
hwmon Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
hwspinlock
hwtracing intel_th: msu-sink: add missing MODULE_DESCRIPTION() 2024-07-03 16:40:30 +02:00
i2c The I2C core gains documentation updates for the testunit, a cleanup 2024-07-19 16:46:26 -07:00
i3c
idle
iio Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
infiniband IOMMU Updates for Linux v6.11 2024-07-19 09:59:58 -07:00
input Input updates for v6.11-rc0 2024-07-19 16:51:39 -07:00
interconnect Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
iommu virtio: features, fixes, cleanups 2024-07-19 11:57:55 -07:00
ipack
irqchip arm64 updates for 6.11: 2024-07-15 17:06:19 -07:00
isdn
leds - Core Frameworks 2024-07-17 17:51:30 -07:00
macintosh macintosh/therm_windtunnel: fix module unload. 2024-07-11 17:32:31 +10:00
mailbox
mcb mcb: remove unused struct 'mcb_parse_priv' 2024-07-03 16:41:48 +02:00
md - Optimize processing of flush bios in the dm-linear and dm-stripe 2024-07-19 10:48:44 -07:00
media media updates for v6.11-rc1 2024-07-17 18:30:10 -07:00
memory
memstick memstick: rtsx_pci_ms: Remove Realtek PCI memstick driver 2024-07-08 10:59:06 +02:00
message
mfd - New Drivers 2024-07-17 17:42:20 -07:00
misc pci-v6.11-changes 2024-07-19 19:03:18 -07:00
mmc - New Drivers 2024-07-17 17:42:20 -07:00
most
mtd soc: driver updates for 6.11 2024-07-16 11:35:27 -07:00
mux
net Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
nfc
ntb
nubus
nvdimm
nvme for-6.11/block-20240710 2024-07-15 14:20:22 -07:00
nvmem Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
of IOMMU Updates for Linux v6.11 2024-07-19 09:59:58 -07:00
opp Merge branches 'pm-opp' and 'pm-tools' 2024-07-15 18:55:14 +02:00
parisc
parport dev/parport: fix the array out-of-bounds risk 2024-07-10 14:59:45 +02:00
pci powerpc updates for 6.11 2024-07-19 21:00:33 -07:00
pcmcia
peci
perf Merge patch series "riscv: Separate vendor extensions from standard extensions" 2024-07-22 15:37:01 -07:00
phy USB/Thunderbolt updates for 6.11-rc1 2024-07-19 15:37:48 -07:00
pinctrl gpio updates for v6.11-rc1 2024-07-15 17:53:24 -07:00
platform - added support for Realtek RTL9302C 2024-07-20 09:03:36 -07:00
pmdomain mdomain: Merge branch fixes into next 2024-07-09 13:12:41 +02:00
pnp
power power sequencing fixes for v6.11-rc1 2024-07-19 14:31:18 -07:00
powercap
pps parport: Remove parport_driver.devmodel 2024-07-03 16:44:22 +02:00
ps3
ptp Networking changes for 6.11. Not much excitement - a handful of large 2024-07-16 19:28:34 -07:00
pwm pwm: axi-pwmgen: add .max_register to regmap 2024-07-11 15:44:40 +02:00
rapidio
ras - The AMD memory controllers data fabric version 4.5 supports 2024-07-15 18:20:24 -07:00
regulator - New Drivers 2024-07-17 17:42:20 -07:00
remoteproc virtio: rename find_vqs_info() op to find_vqs() 2024-07-17 05:20:57 -04:00
reset soc: driver updates for 6.11 2024-07-16 11:35:27 -07:00
rpmsg virtio: rename virtio_find_vqs_info() to virtio_find_vqs() 2024-07-17 05:20:58 -04:00
rtc
s390 virtio: features, fixes, cleanups 2024-07-19 11:57:55 -07:00
sbus sbus: add missing MODULE_DESCRIPTION() macros 2024-07-11 15:42:03 +02:00
scsi Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
sh
siox
slimbus slimbus: Fix struct and documentation alignment in stream.c 2024-07-05 10:13:04 +02:00
soc sound updates for 6.11-rc1 2024-07-19 12:39:34 -07:00
soundwire sound updates for 6.11-rc1 2024-07-19 12:39:34 -07:00
spi Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
spmi spmi: add missing MODULE_DESCRIPTION() macros 2024-07-12 10:44:53 +02:00
ssb
staging Char/Misc and other driver changes for 6.11-rc1 2024-07-19 15:55:08 -07:00
target
tc
tee soc: driver updates for 6.11 2024-07-16 11:35:27 -07:00
thermal Merge branch 'thermal-intel' 2024-07-15 20:44:31 +02:00
thunderbolt
tty TTY/Serial updates for 6.11-rc1 2024-07-19 15:22:14 -07:00
ufs SCSI misc on 20240718 2024-07-19 10:56:58 -07:00
uio
usb pci-v6.11-changes 2024-07-19 19:03:18 -07:00
vdpa vdpa/mlx5: Don't enable non-active VQs in .set_vq_ready() 2024-07-09 08:42:51 -04:00
vfio powerpc updates for 6.11 2024-07-19 21:00:33 -07:00
vhost virtio: features, fixes, cleanups 2024-07-19 11:57:55 -07:00
video fbdev fixes and cleanups for 6.11-rc1: 2024-07-18 11:47:14 -07:00
virt
virtio RISC-V Patches for the 6.11 Merge Window, Part 1 2024-07-20 09:11:27 -07:00
w1
watchdog - New Drivers 2024-07-17 17:42:20 -07:00
xen dma-mapping updates for Linux 6.11 2024-07-19 10:20:26 -07:00
zorro
Kconfig
Makefile