X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=mm%2Futil.c;h=0efd83097ecf94aa7bceeb08737bc29caa74e91b;hb=7f2da1e7d0330395e5e9e350b879b98a1ea495df;hp=5f64026cbb4d0f6c053a539ffb0d723255da85f3;hpb=ebc283118ee448dcb6e6cae74a8a43f17a1ccc3f;p=linux-2.6-omap-h63xx.git diff --git a/mm/util.c b/mm/util.c index 5f64026cbb4..0efd83097ec 100644 --- a/mm/util.c +++ b/mm/util.c @@ -1,3 +1,4 @@ +#include #include #include #include @@ -95,8 +96,8 @@ void *krealloc(const void *p, size_t new_size, gfp_t flags) return (void *)p; ret = kmalloc_track_caller(new_size, flags); - if (ret) { - memcpy(ret, p, min(new_size, ks)); + if (ret && p) { + memcpy(ret, p, ks); kfree(p); } return ret; @@ -136,3 +137,12 @@ char *strndup_user(const char __user *s, long n) return p; } EXPORT_SYMBOL(strndup_user); + +#ifndef HAVE_ARCH_PICK_MMAP_LAYOUT +void arch_pick_mmap_layout(struct mm_struct *mm) +{ + mm->mmap_base = TASK_UNMAPPED_BASE; + mm->get_unmapped_area = arch_get_unmapped_area; + mm->unmap_area = arch_unmap_area; +} +#endif