From: Kulikov Vasiliy Date: Tue, 3 Aug 2010 10:52:55 +0000 (+0200) Subject: cpqarray: check put_user() result X-Git-Tag: v2.6.36-rc1~288^2~28 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f6c4c8e19a087dae7dc651ccbd1ff8b843eedee2;p=profile%2Fivi%2Fkernel-adaptation-intel-automotive.git cpqarray: check put_user() result put_user() may fail, if so return -EFAULT. Signed-off-by: Kulikov Vasiliy Acked-by: Mike Miller Signed-off-by: Jens Axboe --- diff --git a/drivers/block/cpqarray.c b/drivers/block/cpqarray.c index 9473215..d53b029 100644 --- a/drivers/block/cpqarray.c +++ b/drivers/block/cpqarray.c @@ -1179,7 +1179,8 @@ out_passthru: return error; case IDAGETCTLRSIG: if (!arg) return -EINVAL; - put_user(host->ctlr_sig, (int __user *)arg); + if (put_user(host->ctlr_sig, (int __user *)arg)) + return -EFAULT; return 0; case IDAREVALIDATEVOLS: if (MINOR(bdev->bd_dev) != 0) @@ -1187,7 +1188,8 @@ out_passthru: return revalidate_allvol(host); case IDADRIVERVERSION: if (!arg) return -EINVAL; - put_user(DRIVER_VERSION, (unsigned long __user *)arg); + if (put_user(DRIVER_VERSION, (unsigned long __user *)arg)) + return -EFAULT; return 0; case IDAGETPCIINFO: {