• Kan Liang's avatar
    perf mmap: Introduce perf_mmap__read_event() · 7bb45972
    Kan Liang authored
    Except for 'perf record', the other perf tools read events one by one
    from the ring buffer using perf_mmap__read_forward(). But it only
    supports non-overwrite mode.
    
    Introduce perf_mmap__read_event() to support both non-overwrite and
    overwrite mode.
    
    Usage:
    perf_mmap__read_init()
    while(event = perf_mmap__read_event()) {
            //process the event
            perf_mmap__consume()
    }
    perf_mmap__read_done()
    
    It cannot use perf_mmap__read_backward(). Because it always reads the
    stale buffer which is already processed. Furthermore, the forward and
    backward concepts have been removed. The perf_mmap__read_backward() will
    be replaced and discarded later.
    Signed-off-by: default avatarKan Liang <kan.liang@intel.com>
    Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Jin Yao <yao.jin@linux.intel.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Wang Nan <wangnan0@huawei.com>
    Link: http://lkml.kernel.org/r/1516310792-208685-9-git-send-email-kan.liang@intel.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    7bb45972
mmap.h 2.87 KB