lib/parser.c: switch match_u64int() over to use match_strdup()
authorEric Biggers <ebiggers@google.com>
Tue, 30 Oct 2018 22:05:26 +0000 (15:05 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 31 Oct 2018 15:54:12 +0000 (08:54 -0700)
This simplifies the code.  No change in behavior.

Link: http://lkml.kernel.org/r/20180830194814.192880-1-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/parser.c

index 0142ef28f0eb4a432d310aa4edc8bd770880876b..618c36ec8efe35278226dd6d8e8b99ead40936f0 100644 (file)
@@ -166,13 +166,10 @@ static int match_u64int(substring_t *s, u64 *result, int base)
        char *buf;
        int ret;
        u64 val;
-       size_t len = s->to - s->from;
 
-       buf = kmalloc(len + 1, GFP_KERNEL);
+       buf = match_strdup(s);
        if (!buf)
                return -ENOMEM;
-       memcpy(buf, s->from, len);
-       buf[len] = '\0';
 
        ret = kstrtoull(buf, base, &val);
        if (!ret)