|
@@ -2134,9 +2134,10 @@ int do_munmap(struct mm_struct *mm, unsigned long start, size_t len)
|
|
}
|
|
}
|
|
EXPORT_SYMBOL(do_munmap);
|
|
EXPORT_SYMBOL(do_munmap);
|
|
|
|
|
|
-int vm_munmap(struct mm_struct *mm, unsigned long start, size_t len)
|
|
|
|
|
|
+int vm_munmap(unsigned long start, size_t len)
|
|
{
|
|
{
|
|
int ret;
|
|
int ret;
|
|
|
|
+ struct mm_struct *mm = current->mm;
|
|
|
|
|
|
down_write(&mm->mmap_sem);
|
|
down_write(&mm->mmap_sem);
|
|
ret = do_munmap(mm, start, len);
|
|
ret = do_munmap(mm, start, len);
|
|
@@ -2148,7 +2149,7 @@ EXPORT_SYMBOL(vm_munmap);
|
|
SYSCALL_DEFINE2(munmap, unsigned long, addr, size_t, len)
|
|
SYSCALL_DEFINE2(munmap, unsigned long, addr, size_t, len)
|
|
{
|
|
{
|
|
profile_munmap(addr);
|
|
profile_munmap(addr);
|
|
- return vm_munmap(current->mm, addr, len);
|
|
|
|
|
|
+ return vm_munmap(addr, len);
|
|
}
|
|
}
|
|
|
|
|
|
static inline void verify_mm_writelocked(struct mm_struct *mm)
|
|
static inline void verify_mm_writelocked(struct mm_struct *mm)
|