milos-linux/drivers
Carlos López 23e6a1ca04 virt: sev-guest: Do not use host-controlled page order in cleanup path
When issuing an extended guest request (SVM_VMGEXIT_EXT_GUEST_REQUEST),
get_ext_report() allocates a buffer to retrieve a certificate blob from the
host, keeping track of its size in report_req->certs_len.

However, the host may return SNP_GUEST_VMM_ERR_INVALID_LEN, indicating
an invalid buffer size, as well as the expected length of such buffer.
get_ext_report() subsequently updates report_req->certs_len with the
host-controlled value, and cleans up the buffer by computing a page order
from such value. This is incorrect, as the host-provided length may not
match the page order of the original allocation, potentially resulting
in corruption in the page allocator.

Fix this by using alloc_pages_exact() instead, and reusing @npages to
compute the size passed to free_pages_exact(). For consistency, also
use @npages to compute the size when allocating the pages, even though
this last change has no functional effect.

Fixes: 3e385c0d6c ("virt: sev-guest: Move SNP Guest Request data pages handling under snp_cmd_mutex")
Signed-off-by: Carlos López <clopez@suse.de>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Tested-by: Michael Roth <michael.roth@amd.com>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2026-05-17 11:45:07 -07:00
..
accel
accessibility
acpi
amba
android
ata
atm
auxdisplay
base
bcma
block
bluetooth
bus
cache
cdrom
cdx
char
clk
clocksource
comedi
connector
counter
cpufreq
cpuidle
crypto
cxl
dax
dca
devfreq
dibs
dio
dma
dma-buf
dpll
edac
eisa
extcon
firewire
firmware
fpga
fsi
fwctl
gnss
gpib
gpio
gpu drm: Replace old pointer to new idr 2026-05-16 09:32:43 +10:00
greybus
hid hid-for-linus-2026051401 2026-05-14 14:30:01 -07:00
hsi
hte
hv
hwmon hwmon: (lm90) Add lock protection to lm90_alert 2026-05-16 08:10:33 -07:00
hwspinlock
hwtracing
i2c
i3c
idle
iio
infiniband
input
interconnect
iommu iommupt: Fix the end_index calculation in __map_range_leaf() 2026-05-15 07:29:16 +02:00
ipack
irqchip
leds
macintosh
mailbox
mcb
md
media
memory
memstick
message
mfd
misc
mmc
most
mtd
mux
net net: phy: DP83TC811: add reading of abilities 2026-05-14 15:17:12 +02:00
nfc
ntb
nubus
nvdimm
nvme nvme-apple: Reset q->sq_tail during queue init 2026-05-14 07:40:35 -07:00
nvmem
of
opp
parisc
parport
pci
pcmcia
peci
perf
phy
pinctrl
platform platform-drivers-x86 for v7.1-3 2026-05-15 11:12:54 -07:00
pmdomain
pnp
power
powercap
pps
ps3
ptp
pwm
rapidio
ras
regulator
remoteproc
resctrl arm_mpam: Check whether the config array is allocated before destroying it 2026-05-14 09:52:05 +01:00
reset
rpmsg
rtc
s390
sbus
scsi
sh
siox
slimbus
soc
soundwire
spi
spmi
ssb
staging hid-for-linus-2026051401 2026-05-14 14:30:01 -07:00
target
tc
tee
thermal
thunderbolt
tty
ufs
uio
usb
vdpa
vfio vfio/pci: Check BAR resources before exporting a DMABUF 2026-05-14 11:39:03 -06:00
vhost
video
virt virt: sev-guest: Do not use host-controlled page order in cleanup path 2026-05-17 11:45:07 -07:00
virtio
w1
watchdog
xen
zorro
Kconfig
Makefile