linux/drivers/mmc/core
Ao Sun 86152fef52 mmc: block: fix RPMB device unregister ordering
Since commit 7852028a35 ("mmc: block: register RPMB partition with
the RPMB subsystem"), each mmc RPMB partition is represented by two
device objects:
 - the mmc-owned device (`rpmb->dev`, backing the legacy /dev/mmcblkXrpmb
   char device) and
 - the rpmb-core device (`rdev`, backing /dev/rpmbN).

The child RPMB device holds a reference to its parent, so the
parent's release callback cannot be invoked if the child device
is still registered.

Remove rpmb_dev_unregister() from the parent release handler and
unregister the child RPMB device in the remove path before tearing
down the parent device.

Also delete the extra blank line between mmc_blk_remove_rpmb_part()
and {.

Fixes: 7852028a35 ("mmc: block: register RPMB partition with the RPMB subsystem")
Cc: stable@vger.kernel.org
Signed-off-by: Jiazi Li <jiazi.li@transsion.com>
Signed-off-by: Ao Sun <ao.sun@transsion.com>
Reviewed-by: Avri Altman <avri.altman@sandisk.com>
Signed-off-by: Ulf Hansson <ulfh@kernel.org>
2026-07-06 17:25:03 +02:00
..
block.c mmc: block: fix RPMB device unregister ordering 2026-07-06 17:25:03 +02:00
block.h
bus.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
bus.h mmc: use octal file permissions instead of symbolic 2025-10-21 13:37:38 +02:00
card.h mmc: core: Optimize time for secure erase/trim for some Kingston eMMCs 2026-02-23 12:06:55 +01:00
core.c mmc: core: Replace the hard-coded shift value 9 with SECTOR_SHIFT 2026-03-31 12:41:31 +02:00
core.h mmc: core: Add infrastructure for undervoltage handling 2025-08-22 12:08:07 +02:00
crypto.c
crypto.h
debugfs.c mmc: core: Allow more host caps to be modified through debugfs 2025-11-11 17:59:17 +01:00
host.c mmc: core: Switch to use pm_ptr() for mmc_host_class_dev_pm_ops 2026-03-27 10:25:16 +01:00
host.h mmc: core: Remove checking MMC_CAP_4_BIT_DATA from mmc_host_can_uhs() 2026-03-16 15:46:58 +01:00
Kconfig mmc: block: add RPMB dependency 2024-09-03 14:34:44 +02:00
Makefile mmc: core: Prepare to support SD UHS-II cards 2024-10-14 12:40:10 +02:00
mmc_ops.c mmc: core: add mmc_read_tuning 2025-08-19 14:34:15 +02:00
mmc_ops.h mmc: rename mmc_can_ext_csd() to mmc_card_can_ext_csd() 2025-05-14 16:59:17 +02:00
mmc_test.c mmc: mmc_test: Fix __counted_by handling after kzalloc_flex() conversion 2026-07-06 15:44:16 +02:00
mmc.c mmc: core: Fix host controller programming for fixed driver type 2026-05-11 16:45:48 +02:00
pwrseq_emmc.c mmc: Switch back to struct platform_driver::remove() 2024-10-14 12:29:01 +02:00
pwrseq_sd8787.c mmc: Switch back to struct platform_driver::remove() 2024-10-14 12:29:01 +02:00
pwrseq_simple.c mmc: pwrseq_simple: use gpiod_multi_set_value_cansleep 2025-02-17 14:27:34 +01:00
pwrseq.c
pwrseq.h
queue.c for-7.2/block-20260615 2026-06-16 13:02:47 +05:30
queue.h mmc: core: Optimize size of struct mmc_queue_req 2026-04-09 17:49:54 +02:00
quirks.h mmc: core: Simplify with scoped for each OF child loop 2026-04-09 17:51:21 +02:00
regulator.c mmc: core: Add infrastructure for undervoltage handling 2025-08-22 12:08:07 +02:00
sd_ops.c mmc: core: Support UHS-II card control and access 2024-10-24 14:22:24 +02:00
sd_ops.h mmc: core: Support UHS-II card control and access 2024-10-24 14:22:24 +02:00
sd_uhs2.c mmc: core: Adjust some error messages for SD UHS-II cards 2025-06-24 12:38:02 +02:00
sd.c mmc: core: Skip to set the default 200mA SD current limit 2025-10-23 16:07:21 +02:00
sd.h mmc: core: Support UHS-II card control and access 2024-10-24 14:22:24 +02:00
sdio_bus.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sdio_bus.h
sdio_cis.c
sdio_cis.h
sdio_io.c mmc: sdio: Use min3() to simplify sdio_set_block_size() 2026-03-09 14:24:35 +01:00
sdio_irq.c
sdio_ops.c
sdio_ops.h
sdio_uart.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sdio.c mmc: core: SPI mode remove cmd7 2025-08-19 14:33:37 +02:00
slot-gpio.c mmc: rename mmc_can_gpio_ro() to mmc_host_can_gpio_ro() 2025-05-14 16:59:17 +02:00
slot-gpio.h