powerpc/powernv: Add a null pointer check in opal_powercap_init()
authorKunwu Chan <chentao@kylinos.cn>
Sun, 26 Nov 2023 09:57:39 +0000 (17:57 +0800)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 13 Dec 2023 11:19:07 +0000 (22:19 +1100)
kasprintf() returns a pointer to dynamically allocated memory
which can be NULL upon failure.

Fixes: b9ef7b4b867f ("powerpc: Convert to using %pOFn instead of device_node.name")
Signed-off-by: Kunwu Chan <chentao@kylinos.cn>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/20231126095739.1501990-1-chentao@kylinos.cn
arch/powerpc/platforms/powernv/opal-powercap.c

index 7bfe4cb..ea91726 100644 (file)
@@ -196,6 +196,12 @@ void __init opal_powercap_init(void)
 
                j = 0;
                pcaps[i].pg.name = kasprintf(GFP_KERNEL, "%pOFn", node);
+               if (!pcaps[i].pg.name) {
+                       kfree(pcaps[i].pattrs);
+                       kfree(pcaps[i].pg.attrs);
+                       goto out_pcaps_pattrs;
+               }
+
                if (has_min) {
                        powercap_add_attr(min, "powercap-min",
                                          &pcaps[i].pattrs[j]);