Re: [trival patch]x86: unmap vdso pages are missed

From: Shaohua Li
Date: Sun Aug 01 2010 - 20:49:55 EST


On Sat, Jul 31, 2010 at 01:02:02AM +0800, H. Peter Anvin wrote:
> On 07/30/2010 12:55 AM, Shaohua Li wrote:
> > The memory hasn't been unmapped.
> >
> > Signed-off-by: Shaohua Li <shaohua.li@xxxxxxxxx>
>
> Looks right, but it would be really good if you could provide a more
> verbose description about why this is the right thing to do.

We mapped vdso pages but never unmapped them and the vitrual address is lost after
exitting from the function. So unmap vdso pages here.

Signed-off-by: Shaohua Li <shaohua.li@xxxxxxxxx>

diff --git a/arch/x86/vdso/vma.c b/arch/x86/vdso/vma.c
index ac74869..80f23ed 100644
--- a/arch/x86/vdso/vma.c
+++ b/arch/x86/vdso/vma.c
@@ -67,6 +67,7 @@ static int __init init_vdso_vars(void)
*(typeof(__ ## x) **) var_ref(VDSO64_SYMBOL(vbase, x), #x) = &__ ## x;
#include "vextern.h"
#undef VEXTERN
+ vunmap(vbase);
return 0;

oom:
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/