Thread (4 messages) 4 messages, 4 authors, 21d ago

Re: [PATCH v2] powerpc: 82xx: fix uninitialized pointers with free attribute

From: "Christophe Leroy (CS GROUP)" <chleroy@kernel.org>
Date: 2025-12-02 16:01:31
Also in: lkml


Le 16/11/2025 à 15:25, Ally Heev a écrit :
[Vous ne recevez pas souvent de courriers de allyheev@gmail.com. Découvrez pourquoi ceci est important à https://aka.ms/LearnAboutSenderIdentification ]

Uninitialized pointers with `__free` attribute can cause undefined
behavior as the memory allocated to the pointer is freed automatically
when the pointer goes out of scope.

powerpc/km82xx doesn't have any bugs related to this as of now, but,
it is better to initialize and assign pointers with `__free` attribute
in one statement to ensure proper scope-based cleanup

Reported-by: Dan Carpenter <redacted>
Closes: https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Fall%2FaPiG_F5EBQUjZqsl%40stanley.mountain%2F&data=05%7C02%7Cchristophe.leroy%40csgroup.eu%7Cffef37bc0fba4c2c5d4d08de251c0ccd%7C8b87af7d86474dc78df45f69a2011bb5%7C0%7C0%7C638988999594823658%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=spMNfEUgHH43vUqoyG3EAs99MzCC5bMnlWUvsBa0o6Y%3D&reserved=0
Signed-off-by: Ally Heev <redacted>
Reviewed-by: Christophe Leroy (CS GROUP) <chleroy@kernel.org>

Fixes: 4aa5cc1e0012 ("powerpc-km82xx.c: replace of_node_put() with __free")
quoted hunk ↗ jump to hunk
---
Changes in v2:
- updated commit description
- Link to v1: https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Fr%2F20251104-aheev-uninitialized-free-attr-km82xx-v1-1-903be69f2cd4%40gmail.com&data=05%7C02%7Cchristophe.leroy%40csgroup.eu%7Cffef37bc0fba4c2c5d4d08de251c0ccd%7C8b87af7d86474dc78df45f69a2011bb5%7C0%7C0%7C638988999594847235%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=ehJtEL%2F3GHIwW2mPuiD730V%2FDgkuDvudK2gM%2F72QIDE%3D&reserved=0
---
  arch/powerpc/platforms/82xx/km82xx.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/platforms/82xx/km82xx.c b/arch/powerpc/platforms/82xx/km82xx.c
index 99f0f0f4187672614f4f8ad46ab7906f7ad8078b..4ad223525e893c0de15540db2b2c4d239d6d841e 100644
--- a/arch/powerpc/platforms/82xx/km82xx.c
+++ b/arch/powerpc/platforms/82xx/km82xx.c
@@ -27,8 +27,8 @@

  static void __init km82xx_pic_init(void)
  {
-       struct device_node *np __free(device_node);
-       np = of_find_compatible_node(NULL, NULL, "fsl,pq2-pic");
+       struct device_node *np __free(device_node) = of_find_compatible_node(NULL,
+               NULL, "fsl,pq2-pic");

         if (!np) {
                 pr_err("PIC init: can not find cpm-pic node\n");
---
base-commit: c9cfc122f03711a5124b4aafab3211cf4d35a2ac
change-id: 20251104-aheev-uninitialized-free-attr-km82xx-00c4cb7c3d69

Best regards,
--
Ally Heev [off-list ref]
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help