scripts/checkpatch.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
From: bui duc phuc <phucduc.bui@gmail.com>
Add devres_alloc() to $allocFunctions so checkpatch.pl can detect
unnecessary out-of-memory messages following a failed allocation.
Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
---
scripts/checkpatch.pl | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 2b7a42bbdd94..df042d31ff1f 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -644,7 +644,8 @@ our $allocFunctions = qr{(?x:
kmemdup(?:_nul)?) |
(?:\w+)?alloc_skb(?:_ip_align)? |
# dev_alloc_skb/netdev_alloc_skb, et al
- dma_alloc_coherent
+ dma_alloc_coherent |
+ devres_alloc
)};
our $signature_tags = qr{(?xi:
--
2.43.0
On Wed, 2026-08-12 at 09:43 +0700, phucduc.bui@gmail.com wrote:
> Add devres_alloc() to $allocFunctions so checkpatch.pl can detect
> unnecessary out-of-memory messages following a failed allocation.
OK, are you also updating the 2 existing instances where
there is an OOM message?
-----------
drivers/thermal/thermal_hwmon.c: ptr = devres_alloc(devm_thermal_hwmon_release, sizeof(*ptr),
drivers/thermal/thermal_hwmon.c- GFP_KERNEL);
drivers/thermal/thermal_hwmon.c- if (!ptr) {
drivers/thermal/thermal_hwmon.c- dev_warn(dev, "Failed to allocate device resource data\n");
drivers/thermal/thermal_hwmon.c- return -ENOMEM;
drivers/thermal/thermal_hwmon.c- }
-----------
drivers/usb/phy/phy.c: ptr = devres_alloc(devm_usb_phy_release2, sizeof(*ptr), GFP_KERNEL);
drivers/usb/phy/phy.c- if (!ptr) {
drivers/usb/phy/phy.c- dev_dbg(dev, "failed to allocate memory for devres\n");
drivers/usb/phy/phy.c- goto err0;
drivers/usb/phy/phy.c- }
-----------
What about devres_alloc_node? (there aren't any OOM messages)
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -644,7 +644,8 @@ our $allocFunctions = qr{(?x:
> kmemdup(?:_nul)?) |
> (?:\w+)?alloc_skb(?:_ip_align)? |
> # dev_alloc_skb/netdev_alloc_skb, et al
> - dma_alloc_coherent
> + dma_alloc_coherent |
> + devres_alloc
> )};
>
> our $signature_tags = qr{(?xi:
Hi Joe,
Thank you for your review.
>
> OK, are you also updating the 2 existing instances where
> there is an OOM message?
>
> -----------
> drivers/thermal/thermal_hwmon.c: ptr = devres_alloc(devm_thermal_hwmon_release, sizeof(*ptr),
> drivers/thermal/thermal_hwmon.c- GFP_KERNEL);
> drivers/thermal/thermal_hwmon.c- if (!ptr) {
> drivers/thermal/thermal_hwmon.c- dev_warn(dev, "Failed to allocate device resource data\n");
> drivers/thermal/thermal_hwmon.c- return -ENOMEM;
> drivers/thermal/thermal_hwmon.c- }
> -----------
> drivers/usb/phy/phy.c: ptr = devres_alloc(devm_usb_phy_release2, sizeof(*ptr), GFP_KERNEL);
> drivers/usb/phy/phy.c- if (!ptr) {
> drivers/usb/phy/phy.c- dev_dbg(dev, "failed to allocate memory for devres\n");
> drivers/usb/phy/phy.c- goto err0;
> drivers/usb/phy/phy.c- }
> -----------
>
> What about devres_alloc_node? (there aren't any OOM messages)
>
I'll send a v2 patch series addressing your comments.
Best regards,
Phuc
© 2016 - 2026 Red Hat, Inc.