From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:55161 "EHLO mail2-relais-roc.national.inria.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751076AbeCZTlc (ORCPT ); Mon, 26 Mar 2018 15:41:32 -0400 Date: Mon, 26 Mar 2018 21:41:30 +0200 (CEST) From: Julia Lawall To: Colin Ian King cc: kbuild-all@01.org, devel@driverdev.osuosl.org, Greg Kroah-Hartman , Aditya Shankar , Ganesh Krishna , linux-wireless@vger.kernel.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Subject: [PATCH] staging: wilc1000: fix memdup.cocci warnings Message-ID: (sfid-20180326_214146_145835_C145BDA9) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-wireless-owner@vger.kernel.org List-ID: From: Fengguang Wu drivers/staging/wilc1000/host_interface.c:946:32-39: WARNING opportunity for kmemdup drivers/staging/wilc1000/host_interface.c:970:30-37: WARNING opportunity for kmemdup Use kmemdup rather than duplicating its implementation Generated by: scripts/coccinelle/api/memdup.cocci Fixes: aaea2164bdff ("staging: wilc1000: check for kmalloc allocation failures") CC: Colin Ian King Signed-off-by: Fengguang Wu Signed-off-by: Julia Lawall --- tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-next head: 12a0148711a440f5b7111f95a34dfce88cdb47d6 commit: aaea2164bdff39697d0f1ec69dcae62632e37974 [400/412] staging: wilc1000: check for kmalloc allocation failures In the first hunk, should 6 be ETH_ALEN? host_interface.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) --- a/drivers/staging/wilc1000/host_interface.c +++ b/drivers/staging/wilc1000/host_interface.c @@ -943,12 +943,12 @@ static s32 handle_connect(struct wilc_vi } if (conn_attr->bssid) { - hif_drv->usr_conn_req.bssid = kmalloc(6, GFP_KERNEL); + hif_drv->usr_conn_req.bssid = kmemdup(conn_attr->bssid, 6, + GFP_KERNEL); if (!hif_drv->usr_conn_req.bssid) { result = -ENOMEM; goto error; } - memcpy(hif_drv->usr_conn_req.bssid, conn_attr->bssid, 6); } hif_drv->usr_conn_req.ssid_len = conn_attr->ssid_len; @@ -967,15 +967,13 @@ static s32 handle_connect(struct wilc_vi hif_drv->usr_conn_req.ies_len = conn_attr->ies_len; if (conn_attr->ies) { - hif_drv->usr_conn_req.ies = kmalloc(conn_attr->ies_len, + hif_drv->usr_conn_req.ies = kmemdup(conn_attr->ies, + conn_attr->ies_len, GFP_KERNEL); if (!hif_drv->usr_conn_req.ies) { result = -ENOMEM; goto error; } - memcpy(hif_drv->usr_conn_req.ies, - conn_attr->ies, - conn_attr->ies_len); } hif_drv->usr_conn_req.security = conn_attr->security;