Re: [PATCH] ISDN: fix copy_to_user() unused result warning in isdn_ppp

From: Karsten Keil
Date: Tue Feb 21 2006 - 18:01:34 EST


On Tue, Feb 21, 2006 at 11:14:15PM +0100, Jesper Juhl wrote:
> From: Jesper Juhl <jesper.juhl@xxxxxxxxx>
>
>
> Fix compile warning about copy_to_user() unused result in isdn_ppp.c
> drivers/isdn/i4l/isdn_ppp.c:785: warning: ignoring return value of `copy_to_user', declared with attribute warn_unused_result
>
>
> Signed-off-by: Jesper Juhl <jesper.juhl@xxxxxxxxx>
>
> ---
>
> drivers/isdn/i4l/isdn_ppp.c | 5 ++++-
> 1 files changed, 4 insertions(+), 1 deletion(-)
>
> --- linux-2.6.16-rc4-mm1-orig/drivers/isdn/i4l/isdn_ppp.c 2006-01-03 04:21:10.000000000 +0100
> +++ linux-2.6.16-rc4-mm1/drivers/isdn/i4l/isdn_ppp.c 2006-02-21 23:07:57.000000000 +0100
> @@ -782,7 +782,10 @@ isdn_ppp_read(int min, struct file *file
> is->first = b;
>
> spin_unlock_irqrestore(&is->buflock, flags);
> - copy_to_user(buf, save_buf, count);
> + if (copy_to_user(buf, save_buf, count)) {
> + kfree(save_buf);
> + return -EFAULT;
> + }
> kfree(save_buf);
>
> return count;

What about:

--- linux-2.6.16-rc4-mm1-orig/drivers/isdn/i4l/isdn_ppp.c 2006-01-03 04:21:10.000000000 +0100
+++ linux-2.6.16-rc4-mm1/drivers/isdn/i4l/isdn_ppp.c 2006-02-21 23:07:57.000000000 +0100
@@ -782,7 +782,8 @@ isdn_ppp_read(int min, struct file *file
is->first = b;

spin_unlock_irqrestore(&is->buflock, flags);
- copy_to_user(buf, save_buf, count);
+ if (copy_to_user(buf, save_buf, count))
+ count = -EFAULT;
kfree(save_buf);

return count;

should result in a conditional move instead of jumps.

But I'm OK with the original patch as well, for both version you can add

Signed-off-by: Karsten Keil <kkeil@xxxxxxx>

--
Karsten Keil
SuSE Labs
ISDN development
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/