Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

backlight: pm8941: Add NULL check in wled_configure()

devm_kasprintf() returns NULL when memory allocation fails. Currently,
wled_configure() does not check for this case, which results in a NULL
pointer dereference.

Add NULL check after devm_kasprintf() to prevent this issue.

Fixes: f86b77583d88 ("backlight: pm8941: Convert to using %pOFn instead of device_node.name")
Signed-off-by: Henry Martin <bsdhenrymartin@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: "Daniel Thompson (RISCstar)" <danielt@kernel.org>
Link: https://lore.kernel.org/r/20250401091647.22784-1-bsdhenrymartin@gmail.com
Signed-off-by: Lee Jones <lee@kernel.org>

authored by

Henry Martin and committed by
Lee Jones
e12d3e16 d32a0b56

+4 -2
+4 -2
drivers/video/backlight/qcom-wled.c
··· 1406 1406 wled->ctrl_addr = be32_to_cpu(*prop_addr); 1407 1407 1408 1408 rc = of_property_read_string(dev->of_node, "label", &wled->name); 1409 - if (rc) 1409 + if (rc) { 1410 1410 wled->name = devm_kasprintf(dev, GFP_KERNEL, "%pOFn", dev->of_node); 1411 - 1411 + if (!wled->name) 1412 + return -ENOMEM; 1413 + } 1412 1414 switch (wled->version) { 1413 1415 case 3: 1414 1416 u32_opts = wled3_opts;