]> git.baikalelectronics.ru Git - kernel.git/commit
perf/ring_buffer: Fix AUX software double buffering
authorAlexander Shishkin <alexander.shishkin@linux.intel.com>
Fri, 3 May 2019 08:55:35 +0000 (11:55 +0300)
committerIngo Molnar <mingo@kernel.org>
Fri, 3 May 2019 10:46:10 +0000 (12:46 +0200)
commitddc44052f2c31583dcd6f3f2b41c8f2cb6b6ebbf
tree0cd305edccde9edbdb3dbf799b4eabfc6bb77443
parent13e40cf06f89275e729e79d6209baa816e941ff9
perf/ring_buffer: Fix AUX software double buffering

This recent commit:

  5bd8df7063849cd ("perf/ring_buffer: Use high order allocations for AUX buffers optimistically")

overlooked the fact that the previous one page granularity of the AUX buffer
provided an implicit double buffering capability to the PMU driver, which
went away when the entire buffer became one high-order page.

Always make the full-trace mode AUX allocation at least two-part to preserve
the previous behavior and allow the implicit double buffering to continue.

Reported-by: Ammy Yi <ammy.yi@intel.com>
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Cc: adrian.hunter@intel.com
Fixes: 5bd8df7063849cd ("perf/ring_buffer: Use high order allocations for AUX buffers optimistically")
Link: http://lkml.kernel.org/r/20190503085536.24119-2-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/events/ring_buffer.c