[akpm@linux-foundation.org: don't overwrite kstrtoull()'s errno]
Signed-off-by: Fabian Frederick <fabf@skynet.be>
Cc: Michal Hocko <mhocko@suse.cz>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 
        /* return RES_COUNTER_MAX(unlimited) if "-1" is specified */
        if (*buf == '-') {
-               res = simple_strtoull(buf + 1, &end, 10);
-               if (res != 1 || *end != '\0')
+               int rc = kstrtoull(buf + 1, 10, &res);
+
+               if (rc)
+                       return rc;
+               if (res != 1)
                        return -EINVAL;
                *resp = RES_COUNTER_MAX;
                return 0;