summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Huewe <peterhuewe@gmx.de>2011-08-03 16:44:30 +0200
committerHeiko Carstens <heiko.carstens@de.ibm.com>2011-08-03 16:44:21 +0200
commitaf6df871ba87ff93739babb16d26160c37c43183 (patch)
treebb3e2862fa429e941b249c87813f53020eda1b03
parentd5f4d113cb9dac182ba44eb605ec4a2f1fdfd3ec (diff)
downloadlinux-af6df871ba87ff93739babb16d26160c37c43183.tar.gz
linux-af6df871ba87ff93739babb16d26160c37c43183.tar.bz2
linux-af6df871ba87ff93739babb16d26160c37c43183.zip
[S390] qdio: Use kstrtoul_from_user
This patch replaces the code for getting an unsigned long from a userspace buffer by a simple call to kstroul_from_user. This makes it easier to read and less error prone. Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Acked-by: Jan Glauber <jang@linux.vnet.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
-rw-r--r--drivers/s390/cio/qdio_debug.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/s390/cio/qdio_debug.c b/drivers/s390/cio/qdio_debug.c
index f8b03a636e49..0e615cb912d0 100644
--- a/drivers/s390/cio/qdio_debug.c
+++ b/drivers/s390/cio/qdio_debug.c
@@ -188,19 +188,13 @@ static ssize_t qperf_seq_write(struct file *file, const char __user *ubuf,
struct qdio_irq *irq_ptr = seq->private;
struct qdio_q *q;
unsigned long val;
- char buf[8];
int ret, i;
if (!irq_ptr)
return 0;
- if (count >= sizeof(buf))
- return -EINVAL;
- if (copy_from_user(&buf, ubuf, count))
- return -EFAULT;
- buf[count] = 0;
-
- ret = strict_strtoul(buf, 10, &val);
- if (ret < 0)
+
+ ret = kstrtoul_from_user(ubuf, count, 10, &val);
+ if (ret)
return ret;
switch (val) {