[PATCH v1] devres: Initialize a uninitialized struct member

From: Zijun Hu
Date: Mon Jun 17 2024 - 09:09:46 EST


Use memset() after kmalloc() a struct devres_group to initialize
potential uninitialized members such as @color within kernel API
devres_open_group() as alloc_dr() does.

Signed-off-by: Zijun Hu <quic_zijuhu@xxxxxxxxxxx>
---
drivers/base/devres.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/base/devres.c b/drivers/base/devres.c
index 3df0025d12aa..ba3e4603cd77 100644
--- a/drivers/base/devres.c
+++ b/drivers/base/devres.c
@@ -558,6 +558,10 @@ void * devres_open_group(struct device *dev, void *id, gfp_t gfp)
if (unlikely(!grp))
return NULL;

+ /* No need to clear memory twice */
+ if (!(gfp & __GFP_ZERO))
+ memset(grp, 0, sizeof(*grp));
+
grp->node[0].release = &group_open_release;
grp->node[1].release = &group_close_release;
INIT_LIST_HEAD(&grp->node[0].entry);
--
2.7.4