perf tests: Add test to check backward ring buffer
authorWang Nan <wangnan0@huawei.com>
Mon, 9 May 2016 01:47:51 +0000 (01:47 +0000)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 9 May 2016 21:11:22 +0000 (18:11 -0300)
commitee74701ed8add8ad13e642e8618b51fd75add32d
tree0b41fe843428afbfedbffc703f8cdd4429f00b5a
parente24c7520ea9c3e5bb51592c2134aafbf75a3f88a
perf tests: Add test to check backward ring buffer

This test checks reading from backward ring buffer.

Test result:

  # ~/perf test 'ring buffer'
  45: Test backward reading from ring buffer                   : Ok

The test case is a while loop which calls prctl(PR_SET_NAME) multiple
times.  Each prctl should issue 2 events: one PERF_RECORD_SAMPLE, one
PERF_RECORD_COMM.

The first round creates a relative large ring buffer (256 pages). It can
afford all events. Read from it and check the count of each type of
events.

The second round creates a small ring buffer (1 page) and makes it
overwritable. Check the correctness of the buffer.

Signed-off-by: Wang Nan <wangnan0@huawei.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Zefan Li <lizefan@huawei.com>
Cc: pi3orama@163.com
Link: http://lkml.kernel.org/r/1462758471-89706-3-git-send-email-wangnan0@huawei.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/tests/Build
tools/perf/tests/backward-ring-buffer.c [new file with mode: 0644]
tools/perf/tests/builtin-test.c
tools/perf/tests/tests.h