extra is in kernel space use memcpy. sparse warning iwctl.c:1595:42: warning: incorrect type in argument 1 (different address spaces) iwctl.c:1595:42: expected void [noderef] <asn:1>*to iwctl.c:1595:42: got char *extra Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx> --- drivers/staging/vt6656/iwctl.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/staging/vt6656/iwctl.c b/drivers/staging/vt6656/iwctl.c index bf56877..3a68dfa 100644 --- a/drivers/staging/vt6656/iwctl.c +++ b/drivers/staging/vt6656/iwctl.c @@ -1591,13 +1591,11 @@ int iwctl_giwgenie(struct net_device *dev, struct iw_request_info *info, wrq->length = 0; if (pMgmt->wWPAIELen > 0) { wrq->length = pMgmt->wWPAIELen; - if (pMgmt->wWPAIELen <= space) { - if (copy_to_user(extra, pMgmt->abyWPAIE, pMgmt->wWPAIELen)) { - ret = -EFAULT; - } - } else { + + if (pMgmt->wWPAIELen <= space) + memcpy(extra, pMgmt->abyWPAIE, pMgmt->wWPAIELen); + else ret = -E2BIG; - } } return ret; } -- 1.8.5.2 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html