From: Umang Jain <umang.jain@xxxxxxxxxxxxxxxx> commit 404b739e895522838f1abdc340c554654d671dde upstream. The struct vchiq_arm_state 'platform_state' is currently allocated dynamically using kzalloc(). Unfortunately, it is never freed and is subjected to memory leaks in the error handling paths of the probe() function. To address the issue, use device resource management helper devm_kzalloc(), to ensure cleanup after its allocation. Fixes: 71bad7f08641 ("staging: add bcm2708 vchiq driver") Cc: stable@xxxxxxxxxxxxxxx Signed-off-by: Umang Jain <umang.jain@xxxxxxxxxxxxxxxx> Reviewed-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> Link: https://lore.kernel.org/r/20241016130225.61024-2-umang.jain@xxxxxxxxxxxxxxxx Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c @@ -593,7 +593,7 @@ vchiq_platform_init_state(struct vchiq_s { struct vchiq_arm_state *platform_state; - platform_state = kzalloc(sizeof(*platform_state), GFP_KERNEL); + platform_state = devm_kzalloc(state->dev, sizeof(*platform_state), GFP_KERNEL); if (!platform_state) return -ENOMEM; Patches currently in stable-queue which might be from umang.jain@xxxxxxxxxxxxxxxx are queue-6.11/staging-vchiq_arm-use-devm_kzalloc-for-drv_mgmt-allocation.patch queue-6.11/staging-vchiq_arm-use-devm_kzalloc-for-vchiq_arm_state-allocation.patch