linux/drivers/base
Yuho Choi 45dfa00489 driver core: soc: Unregister bus on early device registration failure
soc_bus_register() registers the SoC bus before registering a deferred
early SoC device. If soc_device_register() fails in that path, the
function returns the error directly and leaves the bus registered.

Store the returned SoC device pointer explicitly so the success and
error cases are handled separately. On failure, clear soc_bus_registered
and unregister the bus before returning the error.

Fixes: 6e12db376b ("base: soc: Allow early registration of a single SoC device")
Signed-off-by: Yuho Choi <dbgh9129@gmail.com>
Link: https://patch.msgid.link/20260615180746.713540-1-dbgh9129@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-07-18 16:07:22 +02:00
..
firmware_loader firmware_loader: builtin: fail build on empty firmware 2026-07-12 02:25:08 +02:00
power bpf-next-7.2 2026-06-17 09:18:14 +01:00
regmap regmap: Fix for v7.2 2026-06-26 10:47:26 -07:00
test software node: add kunit tests for fw_devlink support 2026-07-15 17:47:16 +02:00
arch_numa.c arch_numa: remove redundant nodemask clears in numa_init() 2026-07-18 16:07:22 +02:00
arch_topology.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
attribute_container.c driver core: attribute_container: Unwind device_add() on attr failure 2026-07-18 16:07:22 +02:00
auxiliary_sysfs.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
auxiliary.c ACPI support updates for 7.1-rc1 2026-04-13 19:25:07 -07:00
base.h driver core: constify group arrays arguments in driver_add_groups and driver_remove_groups 2026-05-22 13:32:05 +02:00
bus.c driver core: reject devices with unregistered buses 2026-05-02 17:50:50 +02:00
cacheinfo.c sched/cache: Calculate the LLC size and store it in sched_domain 2026-05-18 21:33:15 +02:00
class.c kernfs: pass struct ns_common instead of const void * for namespace tags 2026-04-09 14:36:52 +02:00
component.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
container.c driver core: container: make container_subsys const 2023-12-21 13:56:10 +01:00
core.c driver core: avoid repeatedly printing the same 'Fixed dependency' log 2026-07-17 15:44:44 +02:00
cpu.c driver core: Replace dev->offline + ->offline_disabled with accessors 2026-04-26 23:51:02 +02:00
dd.c driver core: add driver name to probe debug print 2026-07-10 16:56:07 +02:00
devcoredump.c devcoredump: Remove exit call 2026-05-22 13:26:51 +02:00
devres.c devres: rename and export set_node_dbginfo() 2026-03-18 00:02:59 +01:00
devtmpfs.c devtmpfs: Replace simple_strtoul with kstrtoint in mount_param 2026-01-16 16:44:43 +01:00
driver.c driver core: remove driver_set_override() 2026-05-30 22:25:50 +02:00
faux.c driver core: faux: clean up init error handling 2026-05-02 17:50:50 +02:00
firmware.c
hypervisor.c
init.c driver core: make software nodes available earlier 2026-04-04 00:33:49 +02:00
isa.c isa: refactor code to remove nested blocks 2026-07-03 23:14:59 +02:00
Kconfig driver core: Make deferred_probe_timeout default a Kconfig option 2026-03-30 20:45:27 +02:00
Makefile Revert "revocable: Add Kunit test cases" 2026-02-06 16:08:48 +01:00
map.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
memory.c mm.git review status for mm-hotfixes-stable..mm-stable 2026-06-19 10:14:34 -07:00
module.c driver core: fix path of /sys/module in comment 2026-06-29 01:11:14 +02:00
node.c drivers/base/memory: make memory block get/put explicit 2026-06-02 15:22:12 -07:00
physical_location.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
physical_location.h driver core: physical_location.h remove extern from function prototypes 2023-03-24 15:35:48 +01:00
pinctrl.c driver core: Replace dev->of_node_reused with dev_of_node_reused() 2026-04-26 23:50:20 +02:00
platform-msi.c platform-msi: Remove stale comment 2026-02-26 10:48:19 +01:00
platform.c driver core: platform: count references to all kinds of firmware nodes 2026-07-10 16:07:10 +02:00
property.c device property: Refactor to use RAII approach 2026-07-17 15:44:44 +02:00
soc.c driver core: soc: Unregister bus on early device registration failure 2026-07-18 16:07:22 +02:00
swnode.c software node: Fix software_node_get_reference_args() with index -1 2026-07-18 16:07:22 +02:00
syscore.c syscore: Pass context data to callbacks 2025-11-14 10:01:52 +01:00
topology.c sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
trace.c
trace.h devres: Fix page faults when tracing devres from unloaded modules 2024-10-14 08:21:09 +02:00
transport_class.c drivers: base: Remove statistics group if encryption group not created 2026-07-18 16:07:22 +02:00