1
0
Fork 0

drivers/block/floppy.c: convert raw_cmd_copyin from while(1) to label: goto

Reduces indent.
Makes a bit more readable and intelligible.
Return value now at bottom of function.

Signed-off-by: Joe Perches <joe@perches.com>
Cc: Stephen Hemminger <shemminger@vyatta.com>
Cc: Jens Axboe <jens.axboe@oracle.com>
Cc: Marcin Slusarz <marcin.slusarz@gmail.com>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
hifive-unleashed-5.1
Joe Perches 2010-03-10 15:21:08 -08:00 committed by Linus Torvalds
parent ce2f11fe78
commit 7f2527174a
1 changed files with 41 additions and 38 deletions

View File

@ -3126,6 +3126,7 @@ static inline int raw_cmd_copyout(int cmd, void __user *param,
}
ptr = ptr->next;
}
return 0;
}
@ -3156,7 +3157,8 @@ static inline int raw_cmd_copyin(int cmd, void __user *param,
int i;
*rcmd = NULL;
while (1) {
loop:
ptr = kmalloc(sizeof(struct floppy_raw_cmd), GFP_USER);
if (!ptr)
return -ENOMEM;
@ -3186,24 +3188,25 @@ static inline int raw_cmd_copyin(int cmd, void __user *param,
if (ptr->flags & (FD_RAW_READ | FD_RAW_WRITE)) {
if (ptr->length <= 0)
return -EINVAL;
ptr->kernel_data =
(char *)fd_dma_mem_alloc(ptr->length);
ptr->kernel_data = (char *)fd_dma_mem_alloc(ptr->length);
fallback_on_nodma_alloc(&ptr->kernel_data, ptr->length);
if (!ptr->kernel_data)
return -ENOMEM;
ptr->buffer_length = ptr->length;
}
if (ptr->flags & FD_RAW_WRITE) {
ret = fd_copyin(ptr->data, ptr->kernel_data,
ptr->length);
ret = fd_copyin(ptr->data, ptr->kernel_data, ptr->length);
if (ret)
return ret;
}
if (ptr->flags & FD_RAW_MORE) {
rcmd = &(ptr->next);
if (!(ptr->flags & FD_RAW_MORE))
return 0;
ptr->rate &= 0x43;
goto loop;
}
return 0;
}
static int raw_cmd_ioctl(int cmd, void __user *param)