diff options
Diffstat (limited to 'arch/um/kernel/exec.c')
-rw-r--r-- | arch/um/kernel/exec.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/um/kernel/exec.c b/arch/um/kernel/exec.c index bf66b5b7bc6..76a62c0cb2b 100644 --- a/arch/um/kernel/exec.c +++ b/arch/um/kernel/exec.c @@ -19,12 +19,13 @@ void flush_thread(void) { void *data = NULL; - unsigned long end = proc_mm ? TASK_SIZE : STUB_START; int ret; arch_flush_thread(¤t->thread.arch); - ret = unmap(¤t->mm->context.id, 0, end, 1, &data); + ret = unmap(¤t->mm->context.id, 0, STUB_START, 0, &data); + ret = ret || unmap(¤t->mm->context.id, STUB_END, + TASK_SIZE - STUB_END, 1, &data); if (ret) { printk(KERN_ERR "flush_thread - clearing address space failed, " "err = %d\n", ret); |