From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933240AbbFVJnu (ORCPT ); Mon, 22 Jun 2015 05:43:50 -0400 Received: from smtp73.iad3a.emailsrvr.com ([173.203.187.73]:38840 "EHLO smtp73.iad3a.emailsrvr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932160AbbFVJno (ORCPT ); Mon, 22 Jun 2015 05:43:44 -0400 X-Sender-Id: abbotti@mev.co.uk Message-ID: <5587D8CA.6060601@mev.co.uk> Date: Mon, 22 Jun 2015 10:43:38 +0100 From: Ian Abbott User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.7.0 MIME-Version: 1.0 To: Geliang Tang , Sudip Mukherjee CC: hsweeten@visionengravers.com, gregkh@linuxfoundation.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2] staging: comedi: fix cast warning in comedi_compat32.c References: <5d7902ebc1eefb95f29ab3ba8ad9d8029b8024da.1434808718.git.geliangtang@163.com> In-Reply-To: <5d7902ebc1eefb95f29ab3ba8ad9d8029b8024da.1434808718.git.geliangtang@163.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 20/06/15 15:38, 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 > --- > Changes in v2: > - compat_ptr() is substituted by 'unsigned long'. > --- > 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..894a50c 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 long)(temp.uptr), &cmd->chanlist); > err |= __get_user(temp.uint, &cmd32->chanlist_len); > err |= __put_user(temp.uint, &cmd->chanlist_len); > err |= __get_user(temp.uptr, &cmd32->data); > Now it removes the call to compat_ptr(), so it won't work. Your first patch was better, apart from exceeding the 80 character line limit. -- -=( Ian Abbott @ MEV Ltd. E-mail: )=- -=( Web: http://www.mev.co.uk/ )=- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in Please read the FAQ at http://www.tux.org/lkml/