linux/drivers/misc
Ma Ke a6dab2f61d mei: Fix error handling in mei_register
mei_register() fails to release the device reference in error paths
after device_initialize(). During normal device registration, the
reference is properly handled through mei_deregister() which calls
device_destroy(). However, in error handling paths (such as cdev_alloc
failure, cdev_add failure, etc.), missing put_device() calls cause
reference count leaks, preventing the device's release function
(mei_device_release) from being called and resulting in memory leaks
of mei_device.

Found by code review.

Cc: stable <stable@kernel.org>
Fixes: 7704e6be4e ("mei: hook mei_device on class device")
Signed-off-by: Ma Ke <make24@iscas.ac.cn>
Acked-by: Alexander Usyskin <alexander.usyskin@intel.com>
Link: https://patch.msgid.link/20251104020133.5017-1-make24@iscas.ac.cn
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-11-26 13:31:44 +01:00
..
altera-stapl
amd-sbi Merge 6.18-rc3 into char-misc-next 2025-10-27 07:48:19 +01:00
bcm-vk treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
c2port sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
cardreader Char/Misc/IIO/Binder changes for 6.18-rc1 2025-10-04 16:26:32 -07:00
cb710 misc: cb710: Replace deprecated PCI functions 2025-10-22 07:55:22 +02:00
eeprom eeprom: at25: fram: Fix chip range in comment 2025-10-22 07:59:57 +02:00
genwqe misc: genwqe: Fix incorrect cmd field being reported in error 2025-09-06 16:00:32 +02:00
ibmasm Char/Misc/IIO/Binder changes for 6.18-rc1 2025-10-04 16:26:32 -07:00
keba misc: keba: Fix kernfs warning on module unload 2025-01-10 10:16:39 +01:00
lis3lv02d misc: lis3lv02d: Use min to simplify lis3lv02d_misc_read 2025-10-22 07:59:57 +02:00
lkdtm - Remove a bunch of asm implementing condition flags testing in KVM's 2025-10-11 11:19:16 -07:00
mchp_pci1xxxx treewide: rename GPIO set callbacks back to their original names 2025-08-07 10:07:06 +02:00
mei mei: Fix error handling in mei_register 2025-11-26 13:31:44 +01:00
ocxl powerpc, ocxl: Fix extraction of struct xive_irq_data 2025-10-13 09:40:55 +05:30
pvpanic
rp1 misc: rp1: RaspberryPi RP1 misc driver 2025-06-16 11:50:34 -07:00
sgi-gru
sgi-xp treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
uacce uacce: Remove unnecessary IOMMU_DEV_FEAT_IOPF 2025-04-28 13:04:34 +02:00
vmw_vmci vmw_vmci: fix typo in comment 2025-10-22 07:54:15 +02:00
Kconfig misc: rp1: RaspberryPi RP1 misc driver 2025-06-16 11:50:34 -07:00
Makefile char: misc: Move drivers/misc/misc_minor_kunit.c to drivers/char/ 2025-08-19 12:41:17 +02:00
ad525x_dpot-i2c.c
ad525x_dpot-spi.c
ad525x_dpot.c misc: ad525x_dpot: Use str_enabled_disabled() in sysfs_show_reg() 2025-09-06 15:59:46 +02:00
ad525x_dpot.h
apds990x.c misc: apds990x: Drop superfluous return statement 2025-08-19 12:37:13 +02:00
apds9802als.c
atmel-ssc.c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
bh1770glc.c
cs5535-mfgpt.c x86/msr: Add explicit includes of <asm/msr.h> 2025-05-02 10:23:47 +02:00
ds1682.c sysfs: treewide: switch back to bin_attribute::read()/write() 2025-06-17 10:44:13 +02:00
dummy-irq.c
dw-xdata-pcie.c dw-xdata: Use str_write_read() in dw_xdata_start() and dw_xdata_perf() 2025-09-06 15:59:39 +02:00
enclosure.c misc: enclosure: Use str_on_off() helper 2025-06-24 16:46:04 +01:00
fastrpc.c misc: fastrpc: Fix dma_buf object leak in fastrpc_map_lookup 2025-10-22 08:03:24 +02:00
gehc-achc.c
hi6421v600-irq.c misc: Use dev_fwnode() 2025-06-24 16:45:08 +01:00
hisi_hikey_usb.c misc: hisi_hikey_usb: Use str_enabled_disabled() in hub_power_ctrl() 2025-08-19 12:37:15 +02:00
hmc6352.c
hpilo.c
hpilo.h
ibmvmc.c
ibmvmc.h
ics932s401.c
isl29003.c
isl29020.c
kgdbts.c
lan966x_pci.c
lan966x_pci.dtso
lattice-ecp3-config.c
mrvl_cn10k_dpi.c
nsm.c
ntsync.c ntsync: Check wait count based on byte size. 2025-02-21 11:57:33 +01:00
open-dice.c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
pch_phub.c sysfs: treewide: switch back to bin_attribute::read()/write() 2025-06-17 10:44:13 +02:00
pci_endpoint_test.c misc: pci_endpoint_test: Cleanup extra 0 initialization 2025-08-27 18:39:32 +05:30
phantom.c
qcom-coincell.c
rpmb-core.c
smpro-errmon.c
smpro-misc.c
sram-exec.c
sram.c Driver core changes for 6.17-rc1 2025-07-29 12:15:39 -07:00
sram.h
ti_fpc202.c treewide: rename GPIO set callbacks back to their original names 2025-08-07 10:07:06 +02:00
tifm_7xx1.c
tifm_core.c
tps6594-esm.c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
tps6594-pfsm.c misc: tps6594-pfsm: Add TI TPS652G1 PMIC PFSM 2025-07-10 09:58:06 +01:00
tsl2550.c
vcpu_stall_detector.c misc: vcpu_stall_detector: Switch to use hrtimer_setup() 2025-02-18 11:19:04 +01:00
vmw_balloon.c vmw_balloon: indicate success when effectively deflating during migration 2025-10-21 15:46:17 -07:00
xilinx_sdfec.c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
xilinx_tmr_inject.c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
xilinx_tmr_manager.c