Add check for the return value of devm_kmemdup()
to prevent potential null pointer dereference.

Fixes: c76488109616 ("ice: Implement Dynamic Device Personalization (DDP) 
download")
Cc: [email protected]
Signed-off-by: Haoxiang Li <[email protected]>
Reviewed-by: Michal Swiatkowski <[email protected]>
Reviewed-by: Aleksandr Loktionov <[email protected]>
---
Changes in v2:
- modify the Fixes commit number. Thanks, Michal!
---
 drivers/net/ethernet/intel/ice/ice_ddp.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/intel/ice/ice_ddp.c 
b/drivers/net/ethernet/intel/ice/ice_ddp.c
index 59323c019544..351824dc3c62 100644
--- a/drivers/net/ethernet/intel/ice/ice_ddp.c
+++ b/drivers/net/ethernet/intel/ice/ice_ddp.c
@@ -2301,6 +2301,8 @@ enum ice_ddp_state ice_copy_and_init_pkg(struct ice_hw 
*hw, const u8 *buf,
                return ICE_DDP_PKG_ERR;
 
        buf_copy = devm_kmemdup(ice_hw_to_dev(hw), buf, len, GFP_KERNEL);
+       if (!buf_copy)
+               return ICE_DDP_PKG_ERR;
 
        state = ice_init_pkg(hw, buf_copy, len);
        if (!ice_is_init_pkg_successful(state)) {
-- 
2.25.1

Reply via email to