Yu Kuai
5c4d71424d
scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate()
[ Upstream commit a13faca032acbf2699293587085293bdfaafc8ae ]
If alua_rtpg_queue() failed from alua_activate(), then 'qdata' is not
freed, which will cause following memleak:
unreferenced object 0xffff88810b2c6980 (size 32):
comm "kworker/u16:2", pid 635322, jiffies 4355801099 (age 1216426.076s)
hex dump (first 32 bytes):
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
40 39 24 c1 ff ff ff ff 00 f8 ea 0a 81 88 ff ff @9$.............
backtrace:
[<0000000098f3a26d>] alua_activate+0xb0/0x320
[<000000003b529641>] scsi_dh_activate+0xb2/0x140
[<000000007b296db3>] activate_path_work+0xc6/0xe0 [dm_multipath]
[<000000007adc9ace>] process_one_work+0x3c5/0x730
[<00000000c457a985>] worker_thread+0x93/0x650
[<00000000cb80e628>] kthread+0x1ba/0x210
[<00000000a1e61077>] ret_from_fork+0x22/0x30
Fix the problem by freeing 'qdata' in error path.
Fixes: 625fe857e4 ("scsi: scsi_dh_alua: Check scsi_device_get() return value")
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Link: https://lore.kernel.org/r/20230315062154.668812-1-yukuai1@huaweicloud.com
Reviewed-by: Benjamin Block <bblock@linux.ibm.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
2023-04-05 11:16:36 +02:00 |
| .. |
|
accessibility
|
|
|
|
acpi
|
ACPI: video: Fix Lenovo Ideapad Z570 DMI match
|
2023-03-11 16:43:56 +01:00 |
|
amba
|
|
|
|
android
|
binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
|
2022-12-08 11:23:01 +01:00 |
|
ata
|
ata: libata: Fix sata_down_spd_limit() when no link speed is reported
|
2023-02-22 12:50:24 +01:00 |
|
atm
|
|
|
|
auxdisplay
|
|
|
|
base
|
driver core: Fix test_async_probe_init saves device in wrong array
|
2023-02-06 07:52:40 +01:00 |
|
bcma
|
|
|
|
block
|
block: sunvdc: add check for mdesc_grab() returning NULL
|
2023-03-22 13:28:06 +01:00 |
|
bluetooth
|
Bluetooth: hci_bcsp: don't call kfree_skb() under spin_lock_irqsave()
|
2023-01-18 11:41:16 +01:00 |
|
bus
|
bus: sunxi-rsb: Fix error handling in sunxi_rsb_init()
|
2023-02-22 12:50:23 +01:00 |
|
cdrom
|
|
|
|
char
|
ipmi:watchdog: Set panic count to proper value on a panic
|
2023-03-17 08:32:53 +01:00 |
|
clk
|
clk: HI655X: select REGMAP instead of depending on it
|
2023-03-22 13:28:03 +01:00 |
|
clocksource
|
clocksource/drivers/sh_cmt: Make sure channel clock supply is enabled
|
2023-01-18 11:40:56 +01:00 |
|
connector
|
|
|
|
counter
|
counter: stm32-lptimer-cnt: fix the check on arr and cmp registers update
|
2023-01-18 11:41:24 +01:00 |
|
cpufreq
|
cpufreq: armada-37xx: stop using 0 as NULL pointer
|
2023-02-06 07:52:41 +01:00 |
|
cpuidle
|
cpuidle: dt: Return the correct numbers of parsed idle states
|
2023-01-18 11:40:53 +01:00 |
|
crypto
|
crypto: crypto4xx - Call dma_unmap_page when done
|
2023-03-11 16:43:42 +01:00 |
|
dax
|
|
|
|
dca
|
|
|
|
devfreq
|
PM/devfreq: governor: Add a private governor_data for governor
|
2023-01-18 11:41:52 +01:00 |
|
dio
|
drivers: dio: fix possible memory leak in dio_init()
|
2023-01-18 11:41:21 +01:00 |
|
dma
|
dmaengine: sh: rcar-dmac: Check for error num after dma_set_max_seg_size
|
2023-03-03 11:41:48 +01:00 |
|
dma-buf
|
|
|
|
edac
|
EDAC/qcom: Do not pass llcc_driv_data as edac_device_ctl_info's pvt_info
|
2023-02-06 07:52:44 +01:00 |
|
eisa
|
|
|
|
extcon
|
|
|
|
firewire
|
firewire: fix memory leak for payload of request subaction to IEC 61883-1 FCP region
|
2023-02-22 12:50:22 +01:00 |
|
firmware
|
firmware: coreboot: framebuffer: Ignore reserved pixel color bits
|
2023-03-11 16:43:58 +01:00 |
|
fpga
|
fpga: stratix10-soc: Fix return value check in s10_ops_write_init()
|
2023-02-22 12:50:28 +01:00 |
|
fsi
|
WRITE is "data source", not destination...
|
2023-02-22 12:50:23 +01:00 |
|
gnss
|
|
|
|
gpio
|
gpio: vf610: connect GPIO label to dev name
|
2023-03-11 16:43:47 +01:00 |
|
gpu
|
drm/i915: Don't use stolen memory for ring buffers with LLC
|
2023-03-22 13:28:09 +01:00 |
|
greybus
|
|
|
|
hid
|
HID: uhid: Over-ride the default maximum data buffer value with our own
|
2023-03-22 13:28:10 +01:00 |
|
hsi
|
HSI: omap_ssi_core: Fix error handling in ssi_init()
|
2023-01-18 11:41:28 +01:00 |
|
hv
|
Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register()
|
2022-12-08 11:22:58 +01:00 |
|
hwmon
|
hwmon: (ina3221) return prober error code
|
2023-03-22 13:28:07 +01:00 |
|
hwspinlock
|
|
|
|
hwtracing
|
|
|
|
i2c
|
i2c: imx-lpi2c: check only for enabled interrupt flags
|
2023-04-05 11:16:36 +02:00 |
|
i3c
|
|
|
|
ide
|
|
|
|
idle
|
|
|
|
iio
|
iio: accel: mma9551_core: Prevent uninitialized variable in mma9551_read_config_word()
|
2023-03-11 16:44:15 +01:00 |
|
infiniband
|
IB/hfi1: Assign npages earlier
|
2023-03-03 11:41:48 +01:00 |
|
input
|
Input: ads7846 - don't check penirq immediately for 7845
|
2023-03-11 16:43:51 +01:00 |
|
interconnect
|
interconnect: fix mem leak when freeing nodes
|
2023-03-22 13:28:08 +01:00 |
|
iommu
|
iommu/vt-d: Fix PASID directory pointer coherency
|
2023-03-17 08:32:50 +01:00 |
|
ipack
|
|
|
|
irqchip
|
irqchip/irq-bcm7120-l2: Set IRQ_LEVEL for level triggered interrupts
|
2023-03-11 16:43:43 +01:00 |
|
isdn
|
mISDN: hfcmulti: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
|
2023-01-18 11:41:32 +01:00 |
|
leds
|
|
|
|
lightnvm
|
|
|
|
macintosh
|
macintosh: windfarm: Use unsigned type for 1-bit bitfields
|
2023-03-17 08:32:52 +01:00 |
|
mailbox
|
mailbox: zynq-ipi: fix error handling while device_register() fails
|
2023-01-18 11:41:33 +01:00 |
|
mcb
|
mcb: mcb-parse: fix error handing in chameleon_parse_gdd()
|
2023-01-18 11:41:25 +01:00 |
|
md
|
dm flakey: don't corrupt the zero page
|
2023-03-11 16:44:04 +01:00 |
|
media
|
media: m5mols: fix off-by-one loop termination error
|
2023-03-22 13:28:07 +01:00 |
|
memory
|
memory: mvebu-devbus: Fix missing clk_disable_unprepare in mvebu_devbus_probe()
|
2023-02-06 07:52:34 +01:00 |
|
memstick
|
|
|
|
message
|
|
|
|
mfd
|
mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak
|
2023-03-11 16:44:13 +01:00 |
|
misc
|
mei: bus-fixup:upon error print return values of send and receive
|
2023-03-11 16:44:14 +01:00 |
|
mmc
|
mmc: atmel-mci: fix race between stop command and start of next command
|
2023-03-22 13:28:07 +01:00 |
|
mtd
|
ubi: ubi_wl_put_peb: Fix infinite loop when wear-leveling work failed
|
2023-03-11 16:44:10 +01:00 |
|
mux
|
|
|
|
net
|
igbvf: Regard vf reset nack as success
|
2023-04-05 11:16:36 +02:00 |
|
nfc
|
nfc: st-nci: Fix use after free bug in ndlc_remove due to race condition
|
2023-03-22 13:28:05 +01:00 |
|
ntb
|
|
|
|
nubus
|
|
|
|
nvdimm
|
|
|
|
nvme
|
nvmet: avoid potential UAF in nvmet_req_complete()
|
2023-03-22 13:28:06 +01:00 |
|
nvmem
|
nvmem: core: fix cell removal on error
|
2023-02-22 12:50:28 +01:00 |
|
of
|
of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry() and find_dup_cset_prop()
|
2023-01-18 11:41:14 +01:00 |
|
opp
|
OPP: fix error checking in opp_migrate_dentry()
|
2023-03-11 16:43:41 +01:00 |
|
oprofile
|
|
|
|
parisc
|
parisc: led: Fix potential null-ptr-deref in start_task()
|
2023-01-18 11:41:50 +01:00 |
|
parport
|
parport_pc: Avoid FIFO port location truncation
|
2022-11-25 17:42:14 +01:00 |
|
pci
|
PCI: Unify delay handling for reset and resume
|
2023-03-22 13:28:09 +01:00 |
|
pcmcia
|
|
|
|
perf
|
perf/smmuv3: Fix hotplug callback leak in arm_smmu_pmu_init()
|
2023-01-18 11:40:50 +01:00 |
|
phy
|
phy: rockchip-typec: Fix unsigned comparison with less than zero
|
2023-03-11 16:44:15 +01:00 |
|
pinctrl
|
pinctrl: at91: use devm_kasprintf() to avoid potential leaks
|
2023-03-11 16:43:57 +01:00 |
|
platform
|
platform/x86: asus-nb-wmi: Add alternate mapping for KEY_SCREENLOCK
|
2023-02-06 07:52:42 +01:00 |
|
pnp
|
PNP: fix name memory leak in pnp_alloc_dev()
|
2023-01-18 11:40:54 +01:00 |
|
power
|
power: supply: da9150: Fix use after free bug in da9150_charger_remove due to race condition
|
2023-04-05 11:16:36 +02:00 |
|
powercap
|
powercap: fix possible name leak in powercap_register_zone()
|
2023-03-11 16:43:40 +01:00 |
|
pps
|
|
|
|
ps3
|
|
|
|
ptp
|
|
|
|
pwm
|
pwm: stm32-lp: fix the check on arr and cmp registers update
|
2023-03-11 16:44:08 +01:00 |
|
rapidio
|
rapidio: devices: fix missing put_device in mport_cdev_open
|
2023-01-18 11:40:59 +01:00 |
|
ras
|
|
|
|
regulator
|
regulator: s5m8767: Bounds check id indexing into arrays
|
2023-03-11 16:43:57 +01:00 |
|
remoteproc
|
remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers
|
2023-03-11 16:43:52 +01:00 |
|
reset
|
|
|
|
rpmsg
|
rpmsg: glink: Avoid infinite loop on intent for missing channel
|
2023-03-11 16:43:53 +01:00 |
|
rtc
|
rtc: sun6i: Always export the internal oscillator
|
2023-03-11 16:44:13 +01:00 |
|
s390
|
s390/dasd: add missing discipline function
|
2023-03-17 08:32:54 +01:00 |
|
sbus
|
|
|
|
scsi
|
scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate()
|
2023-04-05 11:16:36 +02:00 |
|
sfi
|
|
|
|
sh
|
|
|
|
siox
|
siox: fix possible memory leak in siox_device_add()
|
2022-11-25 17:42:14 +01:00 |
|
slimbus
|
slimbus: stream: correct presence rate frequencies
|
2022-11-25 17:42:17 +01:00 |
|
soc
|
ARM: ux500: do not directly dereference __iomem
|
2023-01-18 11:41:46 +01:00 |
|
soundwire
|
|
|
|
spi
|
spi: synquacer: Fix timeout handling in synquacer_spi_transfer_one()
|
2023-03-11 16:43:47 +01:00 |
|
spmi
|
|
|
|
ssb
|
|
|
|
staging
|
staging: rtl8192e: Remove call_usermodehelper starting RadioPower.sh
|
2023-03-13 10:18:25 +01:00 |
|
target
|
scsi: target: core: Fix warning on RT kernels
|
2023-02-22 12:50:25 +01:00 |
|
tc
|
|
|
|
tee
|
tee: optee: fix possible memory leak in optee_register_device()
|
2022-12-08 11:22:57 +01:00 |
|
thermal
|
thermal: intel: BXT_PMIC: select REGMAP instead of depending on it
|
2023-03-11 16:44:13 +01:00 |
|
thunderbolt
|
|
|
|
tty
|
serial: 8250_em: Fix UART port type
|
2023-03-22 13:28:09 +01:00 |
|
uio
|
uio: uio_dmem_genirq: Fix deadlock between irq config and handling
|
2023-01-18 11:41:22 +01:00 |
|
usb
|
USB: ene_usb6250: Allocate enough memory for full object
|
2023-03-11 16:44:15 +01:00 |
|
vfio
|
vfio: platform: Do not pass return buffer to ACPI _RST method
|
2023-01-18 11:41:22 +01:00 |
|
vhost
|
vhost: fix range used in translate_desc()
|
2023-01-18 11:41:57 +01:00 |
|
video
|
fbdev: stifb: Provide valid pixelclock and add fb_check_var() checks
|
2023-03-22 13:28:09 +01:00 |
|
virt
|
|
|
|
virtio
|
|
|
|
visorbus
|
|
|
|
vlynq
|
|
|
|
vme
|
vme: Fix error not catched in fake_init()
|
2023-01-18 11:41:26 +01:00 |
|
w1
|
w1: fix WARNING after calling w1_process()
|
2023-02-06 07:52:40 +01:00 |
|
watchdog
|
watchdog: pcwd_usb: Fix attempting to access uninitialized memory
|
2023-03-11 16:44:11 +01:00 |
|
xen
|
fix "direction" argument of iov_iter_kvec()
|
2023-02-22 12:50:23 +01:00 |
|
zorro
|
|
|
|
Kconfig
|
|
|
|
Makefile
|
|
|