Message ID | 20240917211325.639765-1-mikisabate@gmail.com |
---|---|
State | New |
Headers | show |
Series | cpuidle: Fix reference count on CPU node | expand |
On dt., d’oct. 22 2024, Miquel Sabaté Solà wrote: > On dt., d’oct. 01 2024, Miquel Sabaté Solà wrote: > >> On dt., de set. 17 2024, Miquel Sabaté Solà wrote: >> >>> For the qcom-spm driver, an early return was not calling the proper >>> of_node_put call for a previously acquired device node. >>> >>> Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com> >>> --- >>> drivers/cpuidle/cpuidle-qcom-spm.c | 4 +++- >>> 1 file changed, 3 insertions(+), 1 deletion(-) >>> >>> diff --git a/drivers/cpuidle/cpuidle-qcom-spm.c b/drivers/cpuidle/cpuidle-qcom-spm.c >>> index 1fc9968eae19..d3608f47d02b 100644 >>> --- a/drivers/cpuidle/cpuidle-qcom-spm.c >>> +++ b/drivers/cpuidle/cpuidle-qcom-spm.c >>> @@ -96,8 +96,10 @@ static int spm_cpuidle_register(struct device *cpuidle_dev, int cpu) >>> return -ENODEV; >>> >>> saw_node = of_parse_phandle(cpu_node, "qcom,saw", 0); >>> - if (!saw_node) >>> + if (!saw_node) { >>> + of_node_put(cpu_node); >>> return -ENODEV; >>> + } >>> >>> pdev = of_find_device_by_node(saw_node); >>> of_node_put(saw_node); >> >> Gently ping for a fix in the same spirit as [1]. >> >> Could you take a look whenever you have some time? >> >> Thanks! >> Miquel >> >> [1] https://lore.kernel.org/all/20240917134246.584026-1-mikisabate@gmail.com/ > > Gently ping. Could someone take a look at this fix? > > Thanks, > Miquel Hello, This is most probably too late for 6.12, but might this be included for 6.13? Could you take a look? Thanks, Miquel
diff --git a/drivers/cpuidle/cpuidle-qcom-spm.c b/drivers/cpuidle/cpuidle-qcom-spm.c index 1fc9968eae19..d3608f47d02b 100644 --- a/drivers/cpuidle/cpuidle-qcom-spm.c +++ b/drivers/cpuidle/cpuidle-qcom-spm.c @@ -96,8 +96,10 @@ static int spm_cpuidle_register(struct device *cpuidle_dev, int cpu) return -ENODEV; saw_node = of_parse_phandle(cpu_node, "qcom,saw", 0); - if (!saw_node) + if (!saw_node) { + of_node_put(cpu_node); return -ENODEV; + } pdev = of_find_device_by_node(saw_node); of_node_put(saw_node);
For the qcom-spm driver, an early return was not calling the proper of_node_put call for a previously acquired device node. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com> --- drivers/cpuidle/cpuidle-qcom-spm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)