• Stephane Eranian's avatar
    perf: Fix errors path in perf_output_begin() · 00d1d0b0
    Stephane Eranian authored
    In case the sampling buffer has no "payload" pages,
    nr_pages is 0. The problem is that the error path in
    perf_output_begin() skips to a label which assumes
    perf_output_lock() has been issued which is not the
    case. That triggers a WARN_ON() in
    perf_output_unlock().
    
    This patch fixes the problem by skipping
    perf_output_unlock() in case data->nr_pages is 0.
    Signed-off-by: default avatarStephane Eranian <eranian@google.com>
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Cc: Mike Galbraith <efault@gmx.de>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    LKML-Reference: <4bf13674.014fd80a.6c82.ffffb20c@mx.google.com>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    00d1d0b0
perf_event.c 130 KB