kernel_samsung_a53x/drivers
Yu Kuai f36bcf96f5 dm-raid: fix lockdep waring in "pers->hot_add_disk"
[ Upstream commit 95009ae904b1e9dca8db6f649f2d7c18a6e42c75 ]

The lockdep assert is added by commit a448af25becf ("md/raid10: remove
rcu protection to access rdev from conf") in print_conf(). And I didn't
notice that dm-raid is calling "pers->hot_add_disk" without holding
'reconfig_mutex'.

"pers->hot_add_disk" read and write many fields that is protected by
'reconfig_mutex', and raid_resume() already grab the lock in other
contex. Hence fix this problem by protecting "pers->host_add_disk"
with the lock.

Fixes: 9092c02d9435 ("DM RAID: Add ability to restore transiently failed devices on resume")
Fixes: a448af25becf ("md/raid10: remove rcu protection to access rdev from conf")
Cc: stable@vger.kernel.org # v6.7+
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Xiao Ni <xni@redhat.com>
Acked-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20240305072306.2562024-10-yukuai1@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-19 09:22:33 +01:00
..
accessibility
acpi ACPI: scan: Fix device check notification handling 2024-11-19 08:44:47 +01:00
amba
android binder: signal epoll threads of self-work 2024-11-18 12:13:30 +01:00
ata ahci: add 43-bit DMA address quirk for ASMedia ASM1061 controllers 2024-11-18 22:25:33 +01:00
atm atm: idt77252: fix a memleak in open_card_ubr0 2024-11-18 12:13:24 +01:00
auxdisplay
base PM: sleep: wakeirq: fix wake irq warning in system suspend 2024-11-19 09:22:17 +01:00
battery
bcma
block aoe: fix the potential use-after-free problem in aoecmd_cfg_pkts 2024-11-19 08:44:37 +01:00
bluetooth Bluetooth: qca: Set both WIDEBAND_SPEECH and LE_STATES quirks for QCA2066 2024-11-18 12:13:17 +01:00
bts
bus bus: tegra-aconnect: Update dependency to ARCH_TEGRA 2024-11-19 08:44:45 +01:00
cdrom
char hwrng: core - Fix page fault dead lock on mmap-ed hwrng 2024-11-18 12:12:55 +01:00
clk clk: qcom: mmcc-msm8974: fix terminating of frequency table arrays 2024-11-19 09:22:17 +01:00
clocksource clocksource/drivers/timer-atmel-tcb: Fix initialization on SAM9 hardware 2024-11-18 11:43:12 +01:00
connector
counter
cpufreq cpufreq: brcmstb-avs-cpufreq: add check for cpufreq_cpu_get's return value 2024-11-19 08:44:38 +01:00
cpuidle
crypto crypto: qat - resolve race condition during AER recovery 2024-11-19 09:22:15 +01:00
dax
dca
devfreq PM / devfreq: Synchronize devfreq_monitor_[start/stop] 2024-11-18 12:13:09 +01:00
dio
dma dmaengine: tegra210-adma: Update dependency to ARCH_TEGRA 2024-11-19 08:44:51 +01:00
dma-buf
edac EDAC/thunderx: Fix possible out-of-bounds string access 2024-11-18 12:12:19 +01:00
eisa
extcon
fingerprint
firewire firewire: core: use long bus reset on gap count error 2024-11-19 08:44:36 +01:00
firmware efi/capsule-loader: fix incorrect allocation size 2024-11-18 23:18:29 +01:00
fpga
fsi
gnss
gpio gpio: fix resource unwinding order in error path 2024-11-18 23:18:30 +01:00
gpu drm/vmwgfx: Fix possible null pointer derefence with invalid contexts 2024-11-19 09:22:15 +01:00
greybus
gud
hid HID: lenovo: Add middleclick_workaround sysfs knob for cptkbd 2024-11-19 08:44:51 +01:00
hsi
hv Drivers: hv: vmbus: Drop error message when 'No request id available' 2024-11-18 23:19:53 +01:00
hwmon hwmon: (coretemp) Enlarge per package core count limit 2024-11-18 22:25:34 +01:00
hwspinlock
hwtracing coresight: etm4x: Fix width of CCITMIN field 2024-11-18 12:12:19 +01:00
i2c i2c: i801: Fix block process call transactions 2024-11-18 12:13:29 +01:00
i3c i3c: master: cdns: Update maximum prescaler value for i2c clock 2024-11-18 12:13:19 +01:00
ide
idle
ifconn
iio iio: accel: bma400: Fix a compilation problem 2024-11-18 12:13:31 +01:00
infiniband RDMA/device: Fix a race between mad_client and cm_client init 2024-11-19 08:44:57 +01:00
input Input: gpio_keys_polled - suppress deferred probe error for gpio 2024-11-19 08:44:36 +01:00
interconnect interconnect: Treat xlate() returning NULL node as an error 2024-11-18 12:12:00 +01:00
iommu iommu/vt-d: Don't issue ATS Invalidation request when device is disconnected 2024-11-19 08:44:48 +01:00
ipack
irqchip irqchip/mips-gic: Don't touch vl_map if a local interrupt is not routable 2024-11-18 22:25:34 +01:00
isdn
kperfmon
kq/mesh
leds leds: sgm3140: Add missing timer cleanup and flash gpio control 2024-11-19 08:44:56 +01:00
lightnvm
macintosh
mailbox
mcb mcb: fix error handling for different scenarios when parsing 2024-11-18 11:43:25 +01:00
md dm-raid: fix lockdep waring in "pers->hot_add_disk" 2024-11-19 09:22:33 +01:00
media media: xc4000: Fix atomicity violation in xc4000_get_frequency 2024-11-19 09:22:15 +01:00
memory
memstick
message
mfd mfd: altera-sysmgr: Call of_node_put() only when of_parse_phandle() takes a ref 2024-11-19 08:44:54 +01:00
misc misc: fastrpc: Mark all sessions as invalid in cb_remove 2024-11-18 12:13:30 +01:00
mmc mmc: tmio: avoid concurrent runs of mmc_request_done() 2024-11-19 09:22:17 +01:00
most
mtd mtd: rawnand: meson: fix scrambling mode value in command macro 2024-11-19 09:22:16 +01:00
muic
mux
net wifi: brcmfmac: Fix use-after-free bug in brcmf_cfg80211_detach 2024-11-19 09:22:14 +01:00
nfc
ntb
nubus
nvdimm nd_btt: Make BTT lanes preemptible 2024-11-18 11:43:03 +01:00
nvme nvmet-fc: abort command when there is no binding 2024-11-18 22:25:33 +01:00
nvmem nvmem: imx: correct nregs for i.MX6UL 2024-11-18 10:58:31 +01:00
of of: property: fix typo in io-channels 2024-11-18 12:13:33 +01:00
opp OPP: debugfs: Fix warning around icc_get_name() 2024-11-19 08:44:49 +01:00
oprofile
parisc
parport parport: parport_serial: Add Brainboxes device IDs and geometry 2024-11-18 12:12:19 +01:00
pci PCI/DPC: Quirk PIO log size for Intel Raptor Lake Root Ports 2024-11-19 09:22:33 +01:00
pcmcia pcmcia: ds: fix possible name leak in error path in pcmcia_device_add() 2024-11-18 11:43:06 +01:00
perf
phy phy: ti: phy-omap-usb2: Fix NULL pointer dereference for SRP 2024-11-18 12:13:24 +01:00
pinctrl pinctrl: mediatek: Drop bogus slew rate register range for MT8192 2024-11-19 08:44:52 +01:00
platform platform/x86: touchscreen_dmi: Allow partial (prefix) matches for ACPI names 2024-11-18 23:18:27 +01:00
pnp PNP: ACPI: fix fortify warning 2024-11-18 12:13:09 +01:00
power power: supply: bq27xxx-i2c: Do not free non existing IRQ 2024-11-18 23:18:29 +01:00
powercap
pps
ps3
ptp ptp: annotate data-race around q->head and q->tail 2024-11-18 11:43:19 +01:00
pwm pwm: jz4740: Don't use dev_err_probe() in .request() 2024-11-18 12:12:47 +01:00
rapidio
ras
regulator regulator: pwm-regulator: Add validity checks in continuous .get_voltage 2024-11-18 22:25:33 +01:00
remoteproc remoteproc: stm32: fix phys_addr_t format string 2024-11-19 08:45:00 +01:00
reset reset: hisilicon: hi6220: fix Wvoid-pointer-to-enum-cast warning 2024-11-18 12:12:16 +01:00
rpmsg rpmsg: virtio: Free driver_override when rpmsg_remove() 2024-11-18 12:12:56 +01:00
rtc rtc: mt6397: select IRQ_DOMAIN instead of depending on it 2024-11-19 08:44:58 +01:00
s390 s390/cio: fix invalid -EBUSY on ccw_device_start 2024-11-18 22:25:37 +01:00
samsung
sbus
scsi block: introduce zone_write_granularity limit 2024-11-19 09:22:16 +01:00
sensorhub
sensors
sfi
sh
siox
slimbus
soc soc: fsl: dpio: fix kcalloc() argument order 2024-11-19 08:44:59 +01:00
soundwire soundwire: stream: fix NULL pointer dereference for multi_link 2024-11-18 12:11:57 +01:00
spi spi: spi-mt65xx: Fix NULL pointer access in interrupt handler 2024-11-19 08:45:00 +01:00
spmi
spu_verify
ssb
staging media: staging: ipu3-imgu: Set fields before media_entity_pads_init() 2024-11-19 09:22:14 +01:00
sti
target scsi: target: core: Add TMF to tmr_list handling 2024-11-18 22:25:32 +01:00
tc
tee tee: optee: Fix supplicant based device enumeration 2024-11-18 12:11:39 +01:00
thermal thermal: core: prevent potential string overflow 2024-11-18 11:42:50 +01:00
thunderbolt
tty serial: Lock console when calling into driver before registration 2024-11-19 09:22:18 +01:00
uh
uio uio: Fix use-after-free in uio_open 2024-11-18 12:12:19 +01:00
usb usb: typec: ucsi: Clean up UCSI_CABLE_PROP macros 2024-11-19 09:22:18 +01:00
vdpa
vfio
vhost vhost: use kzalloc() instead of kmalloc() followed by memset() 2024-11-18 12:13:27 +01:00
vibrator
video backlight: lp8788: Fully initialize backlight_properties during probe 2024-11-19 08:44:56 +01:00
virt
virtio
vision
vision3
visorbus
vlynq
vme
w1
watchdog watchdog: stm32_iwdg: initialize default timeout 2024-11-19 08:44:57 +01:00
xen xen/gntdev: Fix the abuse of underlying struct page in DMA-buf import 2024-11-18 12:13:19 +01:00
zorro
Kconfig
Kconfig.variant1
Makefile
Makefile.variant1