From: Jing Xiangfeng <jingxiangf...@huawei.com>

commit 7e97e4cbf30026b49b0145c3bfe06087958382c5 upstream.

In current code, controller_probe() misses to call ida_simple_remove()
in an error path. Jump to correct label to fix it.

Fixes: 17614978ed34 ("staging: fieldbus: anybus-s: support the Arcx anybus 
controller")
Reviewed-by: Sven Van Asbroeck <thesve...@gmail.com>
Signed-off-by: Jing Xiangfeng <jingxiangf...@huawei.com>
Cc: stable <sta...@vger.kernel.org>
Link: https://lore.kernel.org/r/20201012132404.113031-1-jingxiangf...@huawei.com
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 drivers/staging/fieldbus/anybuss/arcx-anybus.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/staging/fieldbus/anybuss/arcx-anybus.c
+++ b/drivers/staging/fieldbus/anybuss/arcx-anybus.c
@@ -297,7 +297,7 @@ static int controller_probe(struct platf
        regulator = devm_regulator_register(dev, &can_power_desc, &config);
        if (IS_ERR(regulator)) {
                err = PTR_ERR(regulator);
-               goto out_reset;
+               goto out_ida;
        }
        /* make controller info visible to userspace */
        cd->class_dev = kzalloc(sizeof(*cd->class_dev), GFP_KERNEL);


Reply via email to