• Stephane Eranian's avatar
    perf_events: Fix stale ->cgrp pointer in update_cgrp_time_from_cpuctx() · 68cacd29
    Stephane Eranian authored
    This patch solves a stale pointer problem in
    update_cgrp_time_from_cpuctx(). The cpuctx->cgrp
    was not cleared on all possible event exit paths,
    including:
    
       close()
         perf_release()
           perf_release_kernel()
             list_del_event()
    
    This patch fixes list_del_event() to clear cpuctx->cgrp
    when there are no cgroup events left in the context.
    
    [ This second version makes the code compile when
      CONFIG_CGROUP_PERF is not enabled. We unconditionally define
      perf_cpu_context->cgrp. ]
    Signed-off-by: default avatarStephane Eranian <eranian@google.com>
    Cc: peterz@infradead.org
    Cc: perfmon2-devel@lists.sf.net
    Cc: paulus@samba.org
    Cc: davem@davemloft.net
    LKML-Reference: <20110323150306.GA1580@quad>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    68cacd29
perf_event.c 169 KB