lkml.org 
[lkml]   [2010]   [May]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH] x86/pat: fix memory leak in free_memtype
    From
    Date
    On Tue, 2010-05-25 at 17:12 -0700, Suresh Siddha wrote:
    > On Tue, 2010-05-25 at 02:52 -0700, Xiaotian Feng wrote:
    > > reserve_memtype will allocate memory for new memtype, but
    > > in free_memtype, after the memtype erased from rbtree, the
    > > memory is not freed.
    > >
    > > Signed-off-by: Xiaotian Feng <dfeng@redhat.com>
    > > Cc: Thomas Gleixner <tglx@linutronix.de>
    > > Cc: Ingo Molnar <mingo@redhat.com>
    > > Cc: "H. Peter Anvin" <hpa@zytor.com>
    > > Cc: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
    > > Cc: Jack Steiner <steiner@sgi.com>
    > > Cc: Suresh Siddha <suresh.b.siddha@intel.com>
    > > ---
    > > arch/x86/mm/pat_rbtree.c | 2 ++
    > > 1 files changed, 2 insertions(+), 0 deletions(-)
    > >
    > > diff --git a/arch/x86/mm/pat_rbtree.c b/arch/x86/mm/pat_rbtree.c
    > > index 07de4cb..fb8c1e5 100644
    > > --- a/arch/x86/mm/pat_rbtree.c
    > > +++ b/arch/x86/mm/pat_rbtree.c
    > > @@ -15,6 +15,7 @@
    > > #include <linux/rbtree.h>
    > > #include <linux/sched.h>
    > > #include <linux/gfp.h>
    > > +#include <linux/slab.h>
    > >
    > > #include <asm/pgtable.h>
    > > #include <asm/pat.h>
    > > @@ -240,6 +241,7 @@ int rbt_memtype_erase(u64 start, u64 end)
    > > return -EINVAL;
    > >
    > > rb_erase(&data->rb, &memtype_rbroot);
    > > + kfree(data);
    > > return 0;
    > > }
    >
    > Acked-by: Suresh Siddha <suresh.b.siddha@intel.com>
    >
    > Peter, Please apply this for x86/urgent, this is introduced in the post
    > 2.6.34 changes.

    Xiaotian, Also I think more cleaner fix is to do this in free_memtype().
    Can you please resend the patch with this change?

    thanks,
    suresh



    \
     
     \ /
      Last update: 2010-05-26 02:31    [W:0.027 / U:123.296 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site