From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753959AbbFTKin (ORCPT ); Sat, 20 Jun 2015 06:38:43 -0400 Received: from mail-pa0-f47.google.com ([209.85.220.47]:34652 "EHLO mail-pa0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752030AbbFTKid (ORCPT ); Sat, 20 Jun 2015 06:38:33 -0400 Date: Sat, 20 Jun 2015 16:08:19 +0530 From: Sudip Mukherjee To: Geliang Tang Cc: abbotti@mev.co.uk, hsweeten@visionengravers.com, gregkh@linuxfoundation.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] staging: comedi: fix sparse warning in comedi_compat32.c Message-ID: <20150620103819.GA29626@sudip-PC> References: <1434818953-19058-1-git-send-email-geliangtang@163.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1434818953-19058-1-git-send-email-geliangtang@163.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Jun 20, 2015 at 04:49:13PM +0000, Geliang Tang wrote: > This patch fixes the following sparse warning: > > drivers/staging/comedi/comedi_compat32.c:205:16: warning: cast removes > address space of expression > > Signed-off-by: Geliang Tang > --- > drivers/staging/comedi/comedi_compat32.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/staging/comedi/comedi_compat32.c b/drivers/staging/comedi/comedi_compat32.c > index 2584824..29a10fe4 100644 > --- a/drivers/staging/comedi/comedi_compat32.c > +++ b/drivers/staging/comedi/comedi_compat32.c > @@ -202,7 +202,7 @@ static int get_compat_cmd(struct comedi_cmd __user *cmd, > err |= __get_user(temp.uint, &cmd32->stop_arg); > err |= __put_user(temp.uint, &cmd->stop_arg); > err |= __get_user(temp.uptr, &cmd32->chanlist); > - err |= __put_user(compat_ptr(temp.uptr), &cmd->chanlist); > + err |= __put_user((unsigned int __force *)compat_ptr(temp.uptr), &cmd->chanlist); compat_ptr is already a typecast. static inline void __user *compat_ptr(compat_uptr_t uptr) { return (void __user *)(unsigned long)uptr; } so you are adding another typecast to an already exitsing typecast. :( and besides, this also introduces one new checkpatch warning of line more than 80 char. regards sudip -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in Please read the FAQ at http://www.tux.org/lkml/