parisc,metag: Do not hardcode maximum userspace stack size
[platform/adaptation/renesas_rcar/renesas_kernel.git] / mm / kmemleak.c
index c8d7f31..31f01c5 100644 (file)
@@ -753,7 +753,9 @@ static void add_scan_area(unsigned long ptr, size_t size, gfp_t gfp)
        }
 
        spin_lock_irqsave(&object->lock, flags);
-       if (ptr + size > object->pointer + object->size) {
+       if (size == SIZE_MAX) {
+               size = object->pointer + object->size - ptr;
+       } else if (ptr + size > object->pointer + object->size) {
                kmemleak_warn("Scan area larger than object 0x%08lx\n", ptr);
                dump_object_info(object);
                kmem_cache_free(scan_area_cache, area);
@@ -1639,7 +1641,7 @@ static ssize_t kmemleak_write(struct file *file, const char __user *user_buf,
        else if (strncmp(buf, "scan=", 5) == 0) {
                unsigned long secs;
 
-               ret = strict_strtoul(buf + 5, 0, &secs);
+               ret = kstrtoul(buf + 5, 0, &secs);
                if (ret < 0)
                        goto out;
                stop_scan_thread();