#include <linux/fs.h>
#include <linux/cpu.h>
#include <linux/security.h>
+#include <linux/swap.h>
#include <linux/syscalls.h>
#include <linux/jiffies.h>
#include <linux/futex.h>
mm->locked_vm = 0;
mm->mmap = NULL;
mm->mmap_cache = NULL;
- mm->free_area_cache = TASK_UNMAPPED_BASE;
+ mm->free_area_cache = oldmm->mmap_base;
mm->map_count = 0;
mm->rss = 0;
cpus_clear(mm->cpu_vm_mask);
if (likely(!mm_alloc_pgd(mm))) {
mm->def_flags = 0;
-#ifdef __HAVE_ARCH_MMAP_TOP
- mm->mmap_top = mmap_top();
-#endif
set_vx_info(&mm->mm_vx_info, current->vx_info);
return mm;
}
spin_unlock(&mmlist_lock);
exit_aio(mm);
exit_mmap(mm);
+ put_swap_token(mm);
mmdrop(mm);
}
}
p = dup_task_struct(current);
if (!p)
goto fork_out;
+ p->tux_info = NULL;
p->vx_info = NULL;
set_vx_info(&p->vx_info, current->vx_info);
}
#endif
- retval = -ENOMEM;
if ((retval = security_task_alloc(p)))
goto bad_fork_cleanup_policy;
if ((retval = audit_alloc(p)))