Fix coccicheck warning which recommends to use memdup_user(). This patch fixes the following coccicheck warnings: drivers/ide/ide-taskfile.c:492:11-18: WARNING opportunity for memdup_user drivers/ide/ide-taskfile.c:505:10-17: WARNING opportunity for memdup_user Reported-by: Hulk Robot <hulkci@xxxxxxxxxx> Signed-off-by: Zou Wei <zou_wei@xxxxxxxxxx> --- drivers/ide/ide-taskfile.c | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c index aab6a10..336b575 100644 --- a/drivers/ide/ide-taskfile.c +++ b/drivers/ide/ide-taskfile.c @@ -489,28 +489,16 @@ int ide_taskfile_ioctl(ide_drive_t *drive, unsigned long arg) if (taskout) { int outtotal = tasksize; - outbuf = kzalloc(taskout, GFP_KERNEL); - if (outbuf == NULL) { - err = -ENOMEM; - goto abort; - } - if (copy_from_user(outbuf, buf + outtotal, taskout)) { - err = -EFAULT; - goto abort; - } + outbuf = memdup_user(buf + outtotal, taskout); + if (IS_ERR(outbuf)) + return PTR_ERR(outbuf); } if (taskin) { int intotal = tasksize + taskout; - inbuf = kzalloc(taskin, GFP_KERNEL); - if (inbuf == NULL) { - err = -ENOMEM; - goto abort; - } - if (copy_from_user(inbuf, buf + intotal, taskin)) { - err = -EFAULT; - goto abort; - } + inbuf = memdup_user(buf + intotal, taskin); + if (IS_ERR(inbuf)) + return PTR_ERR(inbuf); } memset(&cmd, 0, sizeof(cmd)); -- 2.6.2