Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 147667
b: refs/heads/master
c: f7b6eb3
h: refs/heads/master
i:
  147665: ccaa3c1
  147663: 55ecf7f
v: v3
  • Loading branch information
Peter Zijlstra authored and Ingo Molnar committed Jun 5, 2009
1 parent 50416a8 commit 0355e40
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: cf1f45744c6fa3501e0a6f0ddc418f0ef27e725b
refs/heads/master: f7b6eb3fa07269da20dbbde8ba37a0273fdbd9c9
6 changes: 5 additions & 1 deletion trunk/arch/x86/vdso/vdso32-setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -338,6 +338,8 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
}
}

current->mm->context.vdso = (void *)addr;

if (compat_uses_vma || !compat) {
/*
* MAYWRITE to allow gdb to COW and set breakpoints
Expand All @@ -358,11 +360,13 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
goto up_fail;
}

current->mm->context.vdso = (void *)addr;
current_thread_info()->sysenter_return =
VDSO32_SYMBOL(addr, SYSENTER_RETURN);

up_fail:
if (ret)
current->mm->context.vdso = NULL;

up_write(&mm->mmap_sem);

return ret;
Expand Down
7 changes: 5 additions & 2 deletions trunk/arch/x86/vdso/vma.c
Original file line number Diff line number Diff line change
Expand Up @@ -115,15 +115,18 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
goto up_fail;
}

current->mm->context.vdso = (void *)addr;

ret = install_special_mapping(mm, addr, vdso_size,
VM_READ|VM_EXEC|
VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC|
VM_ALWAYSDUMP,
vdso_pages);
if (ret)
if (ret) {
current->mm->context.vdso = NULL;
goto up_fail;
}

current->mm->context.vdso = (void *)addr;
up_fail:
up_write(&mm->mmap_sem);
return ret;
Expand Down

0 comments on commit 0355e40

Please sign in to comment.