* [PATCH] power: reset: reboot-mode: drop the device reference on unregister
@ 2026-11-03 10:55 Wentao Liang
2026-11-03 11:10 ` Krzysztof Kozlowski
0 siblings, 1 reply; 2+ messages in thread
From: Wentao Liang @ 2026-11-03 10:55 UTC (permalink / raw)
To: Sebastian Reichel; +Cc: linux-pm, linux-kernel, Wentao Liang, stable
reboot_mode_unregister_device() looks the device up with
class_find_device(), which takes a reference that the caller has to drop
with put_device(). The function only calls device_unregister(), which
drops the reference taken when the device was registered. The lookup
reference therefore leaks and the struct device allocated by
device_create() is never freed.
Drop the class_find_device() reference before unregistering, the same
way device_destroy() does.
Fixes: cfaf0a90789a ("power: reset: reboot-mode: Expose sysfs for registered reboot_modes")
Cc: stable@vger.kernel.org
Assisted-by: DeepSeek-V4.1-Flash and OpenAI Codex
Signed-off-by: Wentao Liang <vulab@iscas.ac.cn>
---
drivers/power/reset/reboot-mode.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/power/reset/reboot-mode.c b/drivers/power/reset/reboot-mode.c
index 3611bed341e1..db55b71f0c7e 100644
--- a/drivers/power/reset/reboot-mode.c
+++ b/drivers/power/reset/reboot-mode.c
@@ -249,6 +249,8 @@ static inline void reboot_mode_unregister_device(struct reboot_mode_driver *rebo
return;
priv = dev_get_drvdata(reboot_mode_device);
+ /* matches class_find_device() above */
+ put_device(reboot_mode_device);
device_unregister(reboot_mode_device);
if (!priv)
--
2.34.1
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH] power: reset: reboot-mode: drop the device reference on unregister
2026-11-03 10:55 [PATCH] power: reset: reboot-mode: drop the device reference on unregister Wentao Liang
@ 2026-11-03 11:10 ` Krzysztof Kozlowski
0 siblings, 0 replies; 2+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-03 11:10 UTC (permalink / raw)
To: Wentao Liang; +Cc: linux-pm, stable, Sebastian Reichel, linux-kernel
On Tue, 03 Nov 2026 10:55:43 +0000, Wentao Liang wrote:
> reboot_mode_unregister_device() looks the device up with
> class_find_device(), which takes a reference that the caller has to drop
> with put_device(). The function only calls device_unregister(), which
> drops the reference taken when the device was registered. The lookup
> reference therefore leaks and the struct device allocated by
> device_create() is never freed.
>
> Drop the class_find_device() reference before unregistering, the same
> way device_destroy() does.
>
> Fixes: cfaf0a90789a ("power: reset: reboot-mode: Expose sysfs for registered reboot_modes")
> Cc: stable@vger.kernel.org
> Assisted-by: DeepSeek-V4.1-Flash and OpenAI Codex
> Signed-off-by: Wentao Liang <vulab@iscas.ac.cn>
> ---
> drivers/power/reset/reboot-mode.c | 2 ++
> 1 file changed, 2 insertions(+)
>
Multiple things here:
1. Your team ignored completely previous feedback. Multiple times.
2. You use multiple identities with this email address, thus I doubt that we
speak with an actual person.
3. Your bot does not even bother running checkpatch, right?
4. Nothing of this was reproduced nor tested.
5. Finally, the same feedback:
You sent multiple independent patches, to multiple independent
subsystems. The amount of these patches clearly suggest this was
AI generated and most likely not tested.
More importantly, you sent all this work without properly organizing
relevant patches into patchsets. This makes reviewing difficult
and might cause multiple reviewers to address the same issue.
Replying to the entire set is impossible and requires handling each
patch independently, instead of applying or discarding the set.
Maintainers also won't see the bigger picture of your work. Quite
worrying.
This is on the verge of hostile patch: bomb us with so many
contributions, we won't be able to handle them in efficient manner,
like responding ONCE to ask you to slow down. Considering all this
is untested and LLM generated, I have even more doubts whether this
should be considered for review.
Please read kernel documentation BEFORE posting more work. It will
explain you how to identify subsystems, how to organize your work per
subsystem (so a patchset grouping multiple patches with a short cover
letter), how to document the issue discovery method and what was
or was not tested.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-11-03 11:10 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-03 10:55 [PATCH] power: reset: reboot-mode: drop the device reference on unregister Wentao Liang
2026-11-03 11:10 ` Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®