From: H. Peter Anvin on
On 07/30/2010 12:55 AM, Shaohua Li wrote:
> The memory hasn't been unmapped.
>
> Signed-off-by: Shaohua Li <shaohua.li(a)intel.com>

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.

-hpa

--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Shaohua Li on
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(a)intel.com>
>
> 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(a)intel.com>

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(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/