lkml.org 
[lkml]   [2012]   [May]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[ 077/117] memcg: free spare array to avoid memory leak
    3.2-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Sha Zhengju <handai.szj@taobao.com>

    commit 8c7577637ca31385e92769a77e2ab5b428e8b99c upstream.

    When the last event is unregistered, there is no need to keep the spare
    array anymore. So free it to avoid memory leak.

    Signed-off-by: Sha Zhengju <handai.szj@taobao.com>
    Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Reviewed-by: Kirill A. Shutemov <kirill@shutemov.name>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    mm/memcontrol.c | 6 ++++++
    1 file changed, 6 insertions(+)

    diff --git a/mm/memcontrol.c b/mm/memcontrol.c
    index 31ab9c3..b659260 100644
    --- a/mm/memcontrol.c
    +++ b/mm/memcontrol.c
    @@ -4507,6 +4507,12 @@ static void mem_cgroup_usage_unregister_event(struct cgroup *cgrp,
    swap_buffers:
    /* Swap primary and spare array */
    thresholds->spare = thresholds->primary;
    + /* If all events are unregistered, free the spare array */
    + if (!new) {
    + kfree(thresholds->spare);
    + thresholds->spare = NULL;
    + }
    +
    rcu_assign_pointer(thresholds->primary, new);

    /* To be sure that nobody uses thresholds */



    \
     
     \ /
      Last update: 2012-05-28 06:01    [W:4.076 / U:0.092 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site