Re: [PATCH] platform/x86: simatic-ipc: fix platform device leak on registration failure

From: Markus Elfring

Date: Mon Sep 21 2026 - 07:01:56 EST



> +++ b/drivers/platform/x86/siemens/simatic-ipc.c

> @@ -118,8 +119,11 @@ static int register_platform_devices(u32 station_id)
> platform_device_register_data(NULL, pdevname,
> PLATFORM_DEVID_NONE, &platform_data,
> sizeof(struct simatic_ipc_platform));
> - if (IS_ERR(ipc_batt_platform_device))
> - return PTR_ERR(ipc_batt_platform_device);
> + if (IS_ERR(ipc_batt_platform_device)) {
> + ret = PTR_ERR(ipc_batt_platform_device);
> + ipc_batt_platform_device = NULL;
> + goto err_unregister;
> + }


How do you think about to avoid duplicate checks and variable resets
in such a function implementation?

Regards,
Markus