* [PATCH v2] usb: typec: anx7411: fix OF node reference leaks in anx7411_typec_switch_probe()
@ 2024-11-16 8:55 Joe Hattori
2024-11-19 15:40 ` Heikki Krogerus
0 siblings, 1 reply; 2+ messages in thread
From: Joe Hattori @ 2024-11-16 8:55 UTC (permalink / raw)
To: heikki.krogerus, gregkh; +Cc: linux-usb, Joe Hattori, stable
The refcounts of the OF nodes obtained in by of_get_child_by_name()
calls in anx7411_typec_switch_probe() are not decremented, so add
fwnode_handle_put() calls to anx7411_unregister_switch() and
anx7411_unregister_mux().
Fixes: e45d7337dc0e ("usb: typec: anx7411: Use of_get_child_by_name() instead of of_find_node_by_name()")
Cc: stable@vger.kernel.org
Signed-off-by: Joe Hattori <joe@pf.is.s.u-tokyo.ac.jp>
---
Changed in v2:
- Add the Cc: stable@vger.kernel.org tag.
---
drivers/usb/typec/anx7411.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/usb/typec/anx7411.c b/drivers/usb/typec/anx7411.c
index cdb7e8273823..d3c5d8f410ca 100644
--- a/drivers/usb/typec/anx7411.c
+++ b/drivers/usb/typec/anx7411.c
@@ -29,6 +29,8 @@
#include <linux/workqueue.h>
#include <linux/power_supply.h>
+#include "mux.h"
+
#define TCPC_ADDRESS1 0x58
#define TCPC_ADDRESS2 0x56
#define TCPC_ADDRESS3 0x54
@@ -1094,6 +1096,7 @@ static void anx7411_unregister_mux(struct anx7411_data *ctx)
{
if (ctx->typec.typec_mux) {
typec_mux_unregister(ctx->typec.typec_mux);
+ fwnode_handle_put(ctx->typec.typec_mux->dev.fwnode);
ctx->typec.typec_mux = NULL;
}
}
@@ -1102,6 +1105,7 @@ static void anx7411_unregister_switch(struct anx7411_data *ctx)
{
if (ctx->typec.typec_switch) {
typec_switch_unregister(ctx->typec.typec_switch);
+ fwnode_handle_put(ctx->typec.typec_switch->dev.fwnode);
ctx->typec.typec_switch = NULL;
}
}
--
2.34.1
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH v2] usb: typec: anx7411: fix OF node reference leaks in anx7411_typec_switch_probe()
2024-11-16 8:55 [PATCH v2] usb: typec: anx7411: fix OF node reference leaks in anx7411_typec_switch_probe() Joe Hattori
@ 2024-11-19 15:40 ` Heikki Krogerus
0 siblings, 0 replies; 2+ messages in thread
From: Heikki Krogerus @ 2024-11-19 15:40 UTC (permalink / raw)
To: Joe Hattori; +Cc: gregkh, linux-usb, stable
On Sat, Nov 16, 2024 at 05:55:03PM +0900, Joe Hattori wrote:
> The refcounts of the OF nodes obtained in by of_get_child_by_name()
> calls in anx7411_typec_switch_probe() are not decremented, so add
> fwnode_handle_put() calls to anx7411_unregister_switch() and
> anx7411_unregister_mux().
>
> Fixes: e45d7337dc0e ("usb: typec: anx7411: Use of_get_child_by_name() instead of of_find_node_by_name()")
> Cc: stable@vger.kernel.org
> Signed-off-by: Joe Hattori <joe@pf.is.s.u-tokyo.ac.jp>
> ---
> Changed in v2:
> - Add the Cc: stable@vger.kernel.org tag.
> ---
> drivers/usb/typec/anx7411.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/usb/typec/anx7411.c b/drivers/usb/typec/anx7411.c
> index cdb7e8273823..d3c5d8f410ca 100644
> --- a/drivers/usb/typec/anx7411.c
> +++ b/drivers/usb/typec/anx7411.c
> @@ -29,6 +29,8 @@
> #include <linux/workqueue.h>
> #include <linux/power_supply.h>
>
> +#include "mux.h"
This should not be necessary.
> #define TCPC_ADDRESS1 0x58
> #define TCPC_ADDRESS2 0x56
> #define TCPC_ADDRESS3 0x54
> @@ -1094,6 +1096,7 @@ static void anx7411_unregister_mux(struct anx7411_data *ctx)
> {
> if (ctx->typec.typec_mux) {
> typec_mux_unregister(ctx->typec.typec_mux);
> + fwnode_handle_put(ctx->typec.typec_mux->dev.fwnode);
> ctx->typec.typec_mux = NULL;
> }
> }
> @@ -1102,6 +1105,7 @@ static void anx7411_unregister_switch(struct anx7411_data *ctx)
> {
> if (ctx->typec.typec_switch) {
> typec_switch_unregister(ctx->typec.typec_switch);
> + fwnode_handle_put(ctx->typec.typec_switch->dev.fwnode);
> ctx->typec.typec_switch = NULL;
> }
> }
Instead of accessing the fwnode like that, add members for them to
anx7411_data.
thanks,
--
heikki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-11-19 15:40 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-16 8:55 [PATCH v2] usb: typec: anx7411: fix OF node reference leaks in anx7411_typec_switch_probe() Joe Hattori
2024-11-19 15:40 ` Heikki Krogerus
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.