linux/drivers
Ilya Dryomov bd3884a204 rbd: check for EOD after exclusive lock is ensured to be held
Similar to commit 870611e487 ("rbd: get snapshot context after
exclusive lock is ensured to be held"), move the "beyond EOD" check
into the image request state machine so that it's performed after
exclusive lock is ensured to be held.  This avoids various race
conditions which can arise when the image is shrunk under I/O (in
practice, mostly readahead).  In one such scenario

    rbd_assert(objno < rbd_dev->object_map_size);

can be triggered if a close-to-EOD read gets queued right before the
shrink is initiated and the EOD check is performed against an outdated
mapping_size.  After the resize is done on the server side and exclusive
lock is (re)acquired bringing along the new (now shrunk) object map, the
read starts going through the state machine and rbd_obj_may_exist() gets
invoked on an object that is out of bounds of rbd_dev->object_map array.

Cc: stable@vger.kernel.org
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Dongsheng Yang <dongsheng.yang@linux.dev>
2026-02-03 21:00:22 +01:00
..
accel accel/amdxdna: Block running under a hypervisor 2025-12-15 13:00:03 -06:00
accessibility
acpi ACPI: PM: s2idle: Add module parameter for LPS0 constraints checking 2026-01-13 23:10:25 +01:00
amba soc: driver updates for 6.19 2025-12-05 17:29:04 -08:00
android rust_binder: remove spin_lock() in rust_shrink_free_page() 2025-12-29 11:34:16 +01:00
ata ata: libata: Print features also for ATAPI devices 2026-01-13 22:00:02 +09:00
atm atm: Fix dma_free_coherent() size 2026-01-08 08:47:32 -08:00
auxdisplay
base Driver core fixes for 6.19-rc7 2026-01-24 10:13:22 -08:00
bcma
block rbd: check for EOD after exclusive lock is ensured to be held 2026-02-03 21:00:22 +01:00
bluetooth Bluetooth: hci_uart: fix null-ptr-deref in hci_uart_write_work 2026-01-22 13:22:22 -05:00
bus bus: simple-pm-bus: Probe the Layerscape SCFG node 2026-01-27 16:33:32 +01:00
cache
cdrom
cdx
char Char/Misc/IIO driver updates for 6.19-rc1 2025-12-06 18:34:24 -08:00
clk This pull request is entirely SoC clk drivers, not for lack of trying to modify 2025-12-08 09:38:52 +09:00
clocksource riscv: clocksource: Fix stimecmp update hazard on RV32 2026-01-14 17:42:46 -07:00
comedi comedi: dmm32at: serialize use of paged registers 2026-01-16 16:43:51 +01:00
connector
counter counter: 104-quad-8: Fix incorrect return value in IRQ handler 2025-12-22 20:03:23 +09:00
cpufreq CPUFreq fixes for 6.19 2026-01-27 14:40:29 +01:00
cpuidle soc: driver updates for 6.19 2025-12-05 17:29:04 -08:00
crypto crypto: qat - fix duplicate restarting msg during AER error 2025-12-29 08:44:14 +08:00
cxl cxl: Check for invalid addresses returned from translation functions on errors 2026-01-13 08:30:40 -07:00
dax drivers/dax: add some missing kerneldoc comment fields for struct dev_dax 2026-01-14 22:16:26 -08:00
dca
devfreq
dibs
dio
dma dmaengine: apple-admac: Add "apple,t8103-admac" compatible 2026-01-11 22:12:49 +05:30
dma-buf VFIO updates for v6.19-rc1 2025-12-04 18:42:48 -08:00
dpll dpll: Prevent duplicate registrations 2026-01-22 08:08:42 -08:00
edac EDAC/x38: Fix a resource leak in x38_probe1() 2026-01-04 08:35:39 +01:00
eisa
extcon
firewire firewire: core: fix race condition against transaction list 2026-01-29 08:03:55 +09:00
firmware mm: rename cpu_bitmap field to flexible_array 2026-01-19 12:30:00 -08:00
fpga
fsi
fwctl
gnss
gpib
gpio gpiolib: acpi: Fix potential out-of-boundary left shift 2026-01-28 15:24:09 +01:00
gpu Rust fixes for v6.19 2026-01-30 16:15:59 -08:00
greybus
hid hid-for-linus-2026010801 2026-01-08 07:44:48 -08:00
hsi
hte
hv mshv: handle gpa intercepts for arm64 2026-01-15 07:29:14 +00:00
hwmon hwmon: (ltc4282): Fix reset_history file permissions 2025-12-19 08:44:22 -08:00
hwspinlock
hwtracing intel_th: rename error label 2026-01-16 16:42:41 +01:00
i2c i2c-host-fixes for v6.19-rc7 2026-01-24 12:56:53 +01:00
i3c i3c: adi: Fix confusing cleanup.h syntax 2025-12-12 23:59:39 +01:00
idle
iio iio: dac: ad3552r-hs: fix out-of-bound write in ad3552r_hs_write_data_source 2026-01-11 13:25:15 +00:00
infiniband RDMA/bnxt_re: fix dma_free_coherent() pointer 2025-12-30 06:45:51 -05:00
input Input updates for v6.19-rc6 2026-01-25 09:42:25 -08:00
interconnect interconnect: debugfs: initialize src_node and dst_node to empty strings 2026-01-12 01:58:36 +02:00
iommu IOMMU Fixes for Linux v6.19-rc7 2026-01-31 09:40:13 -08:00
ipack
irqchip irqchip/ls-extirq: Convert to a platform driver to make it work again 2026-01-27 16:33:32 +01:00
isdn mISDN: annotate data-race around dev->work 2026-01-20 18:37:41 -08:00
leds leds: led-class: Only Add LED to leds_list when it is fully ready 2026-01-20 16:02:01 +00:00
macintosh soc: driver updates for 6.19 2025-12-05 17:29:04 -08:00
mailbox
mcb
md block-6.19-20260130 2026-01-30 13:18:32 -08:00
media [GIT PULL for v6.19-rc6] media fixes 2026-01-14 08:18:01 -08:00
memory soc: driver updates for 6.19 2025-12-05 17:29:04 -08:00
memstick
message
mfd MFD for v6.19 2025-12-04 15:18:33 -08:00
misc mei: trace: treat reg parameter as string 2026-01-16 16:43:47 +01:00
mmc mmc: sdhci-of-dwcmshc: Fix DMA 128MB boundary for Eswin EIC7700 2026-01-22 13:26:08 +01:00
most
mtd A single late MTD fix, which reverts a fix that turned out to be 2026-01-29 14:08:36 -08:00
mux mux: mmio: Fix IS_ERR() vs NULL check in probe() 2026-01-16 16:42:08 +01:00
net net/mlx5e: Skip ESN replay window setup for IPsec crypto offload 2026-01-28 20:51:29 -08:00
nfc Revert "nfc/nci: Add the inconsistency check between the input data length and count" 2026-01-17 18:02:50 -08:00
ntb ntb: transport: Fix uninitialized mutex 2026-01-17 11:57:39 -05:00
nubus
nvdimm NVDIMM changes for 6.19 2025-12-06 09:32:25 -08:00
nvme block-6.19-20260130 2026-01-30 13:18:32 -08:00
nvmem Char/Misc/IIO driver updates for 6.19-rc1 2025-12-06 18:34:24 -08:00
of dma-mapping fixes for Linux 6.19 2026-01-30 13:15:04 -08:00
opp
parisc parisc: Set valid bit in high byte of 64‑bit physical address 2025-12-19 13:56:17 +01:00
parport
pci pci-v6.19-fixes-4 2026-01-23 13:20:24 -08:00
pcmcia
peci Char/Misc/IIO driver updates for 6.19-rc1 2025-12-06 18:34:24 -08:00
perf arm64 updates for 6.19: 2025-12-02 17:03:55 -08:00
phy phy: freescale: imx8m-pcie: assert phy reset during power on 2026-01-14 21:44:39 +05:30
pinctrl gpio fixes for v6.19-rc8 2026-01-30 11:58:27 -08:00
platform platform/x86: acer-wmi: Fix missing capability check 2026-01-20 17:10:56 +02:00
pmdomain pmdomain providers: 2026-01-23 13:12:49 -08:00
pnp
power soc: driver updates for 6.19 2025-12-05 17:29:04 -08:00
powercap powercap: intel_rapl: Fix possible recursive lock warning 2025-12-17 17:24:28 +01:00
pps printk changes for 6.19 2025-12-03 12:42:36 -08:00
ps3
ptp Networking changes for 6.19. 2025-12-03 17:24:33 -08:00
pwm pwm: max7360: Populate missing .sizeof_wfhw in max7360_pwm_ops 2026-01-19 18:31:05 +01:00
rapidio
ras EFI updates for v6.19: 2025-12-04 17:10:08 -08:00
regulator regulator: fp9931: Add missing memory allocation check 2026-01-19 14:42:02 +00:00
remoteproc
resctrl arm_mpam: Use non-atomic bitops when modifying feature bitmap 2026-01-16 12:04:20 +00:00
reset This pull request is entirely SoC clk drivers, not for lack of trying to modify 2025-12-08 09:38:52 +09:00
rpmsg
rtc RTC for 6.19 2025-12-13 17:09:06 +12:00
s390 s390/ap: Fix wrong APQN fill calculation 2026-01-20 14:33:42 +01:00
sbus
scsi scsi: be2iscsi: Fix a memory leak in beiscsi_boot_get_sinfo() 2026-01-23 22:39:07 -05:00
sh
siox
slimbus slimbus: core: clean up of_slim_get_device() 2026-01-16 16:43:05 +01:00
soc soc: renesas: Fix missing dependency on new CONFIG_CACHEMAINT_FOR_DMA 2026-01-15 18:13:33 -07:00
soundwire soundwire fix for 6.19 2026-01-18 12:29:12 -08:00
spi spi: intel-pci: Add support for Nova Lake SPI serial flash 2026-01-15 14:21:29 +00:00
spmi
ssb
staging Staging driver updates for 6.19-rc1 2025-12-06 18:52:00 -08:00
target scsi: firewire: sbp-target: Fix overflow in sbp_make_tpg() 2026-01-23 22:41:21 -05:00
tc
tee
thermal thermal: core: Fix typo and indentation in comments 2025-12-15 12:47:39 +01:00
thunderbolt USB/Thunderbolt changes for 6.19-rc1 2025-12-06 18:42:12 -08:00
tty serial: Fix not set tty->port race condition 2026-01-23 17:23:09 +01:00
ufs scsi: ufs: amd-versal2: Fix PHY initialization in HCE enable notify 2026-01-23 22:43:44 -05:00
uio uio: pci_sva: correct '-ENODEV' check logic 2026-01-16 16:43:43 +01:00
usb xhci: sideband: don't dereference freed ring when removing sideband endpoint 2026-01-16 12:19:37 +01:00
vdpa Significant patch series in this merge are as follows: 2025-12-05 13:52:43 -08:00
vfio vfio: Prevent from pinned DMABUF importers to attach to VFIO DMABUF 2026-01-23 08:47:48 -07:00
vhost vhost/vsock: improve RCU read sections around vhost_vsock_get() 2025-12-24 08:02:57 -05:00
video fbdev fixes & enhancements for 6.19-rc1: 2025-12-06 15:41:26 -08:00
virt virt: Fix Kconfig warning when selecting TSM without VIRT_DRIVERS 2025-12-04 17:34:16 -08:00
virtio
w1 w1: fix redundant counter decrement in w1_attach_slave_device() 2025-12-28 11:52:10 +01:00
watchdog linux-watchdog 6.19-rc1 tag 2025-12-06 10:00:49 -08:00
xen SCSI fixes on 20260125 2026-01-25 12:06:15 -08:00
zorro
Kconfig Staging driver updates for 6.19-rc1 2025-12-06 18:52:00 -08:00
Makefile Staging driver updates for 6.19-rc1 2025-12-06 18:52:00 -08:00