From 9010a286d9857fccfac69e5e8bdf9b74ea1f7c0e Mon Sep 17 00:00:00 2001 From: Malcolm Priestley Date: Mon, 13 Jan 2014 16:23:30 +0000 Subject: [PATCH] staging: vt6656: sparse fixes: iwctl_siwgenie use memcpy. extra is in kernel space replace copy_from_user with memcpy with no need to error check. We already know that extra is valid by error checking on wrq->length. sparse warning iwctl.c:1567:53: warning: incorrect type in argument 2 (different address spaces) iwctl.c:1567:53: expected void const [noderef] *from iwctl.c:1567:53: got char *extra Signed-off-by: Malcolm Priestley Signed-off-by: Greg Kroah-Hartman --- drivers/staging/vt6656/iwctl.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/staging/vt6656/iwctl.c b/drivers/staging/vt6656/iwctl.c index 058df65..bf56877 100644 --- a/drivers/staging/vt6656/iwctl.c +++ b/drivers/staging/vt6656/iwctl.c @@ -1564,10 +1564,8 @@ int iwctl_siwgenie(struct net_device *dev, struct iw_request_info *info, goto out; } memset(pMgmt->abyWPAIE, 0, MAX_WPA_IE_LEN); - if (copy_from_user(pMgmt->abyWPAIE, extra, wrq->length)) { - ret = -EFAULT; - goto out; - } + + memcpy(pMgmt->abyWPAIE, extra, wrq->length); pMgmt->wWPAIELen = wrq->length; } else { memset(pMgmt->abyWPAIE, 0, MAX_WPA_IE_LEN); -- 2.7.4