]> git.baikalelectronics.ru Git - kernel.git/commitdiff
i2c: mux: gpio: Add missing fwnode_handle_put()
authorLiang He <windhl@126.com>
Wed, 22 Mar 2023 04:29:51 +0000 (12:29 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 6 Oct 2023 12:56:43 +0000 (14:56 +0200)
[ Upstream commit db6aee6083a56ac4a6cd1b08fff7938072bcd0a3 ]

In i2c_mux_gpio_probe_fw(), we should add fwnode_handle_put()
when break out of the iteration device_for_each_child_node()
as it will automatically increase and decrease the refcounter.

Fixes: 98b2b712bc85 ("i2c: i2c-mux-gpio: Enable this driver in ACPI land")
Signed-off-by: Liang He <windhl@126.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/i2c/muxes/i2c-mux-gpio.c

index 73a23e117ebec4e8118efb6de4f8c1a049dd3fe5..0930a51c8c7c07d15fb9a32591988036391d6a93 100644 (file)
@@ -105,8 +105,10 @@ static int i2c_mux_gpio_probe_fw(struct gpiomux *mux,
 
                } else if (is_acpi_node(child)) {
                        rc = acpi_get_local_address(ACPI_HANDLE_FWNODE(child), values + i);
-                       if (rc)
+                       if (rc) {
+                               fwnode_handle_put(child);
                                return dev_err_probe(dev, rc, "Cannot get address\n");
+                       }
                }
 
                i++;