Instead of kmalloc and memcpy use kmemdup in handle_connect_timeout(). Also return -ENOMEM incase of failure to allocate the memory. Signed-off-by: Ajay Singh <ajay.kathat@xxxxxxxxxxxxx> --- drivers/staging/wilc1000/host_interface.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/staging/wilc1000/host_interface.c b/drivers/staging/wilc1000/host_interface.c index b1f67a7..ad9270e 100644 --- a/drivers/staging/wilc1000/host_interface.c +++ b/drivers/staging/wilc1000/host_interface.c @@ -1166,10 +1166,11 @@ static s32 handle_connect_timeout(struct wilc_vif *vif) if (hif_drv->usr_conn_req.ies) { info.req_ies_len = hif_drv->usr_conn_req.ies_len; - info.req_ies = kmalloc(hif_drv->usr_conn_req.ies_len, GFP_KERNEL); - memcpy(info.req_ies, - hif_drv->usr_conn_req.ies, - hif_drv->usr_conn_req.ies_len); + info.req_ies = kmemdup(hif_drv->usr_conn_req.ies, + hif_drv->usr_conn_req.ies_len, + GFP_KERNEL); + if (!info.req_ies) + return -ENOMEM; } hif_drv->usr_conn_req.conn_result(CONN_DISCONN_EVENT_CONN_RESP, -- 2.7.4 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel