linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch] x86, perf: avoid spamming kernel log for bts buffer failure
@ 2014-06-30 23:04 David Rientjes
  2014-07-01  9:34 ` Peter Zijlstra
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: David Rientjes @ 2014-06-30 23:04 UTC (permalink / raw)
  To: Peter Zijlstra, Paul Mackerras, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Stephane Eranian, x86, linux-kernel

It's unnecessary to excessively spam the kernel log anytime the BTS buffer 
cannot be allocated, so make this allocation __GFP_NOWARN.

The user probably will want to at least find some artifact that the 
allocation has failed in the past, probably due to fragmentation because 
of its large size, when it's not allocated at bootstrap.  Thus, add a 
WARN_ONCE() so something is left behind for them to understand why perf 
commnads that require PEBS is not working properly.

Signed-off-by: David Rientjes <rientjes@google.com>
---
 arch/x86/kernel/cpu/perf_event_intel_ds.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/cpu/perf_event_intel_ds.c b/arch/x86/kernel/cpu/perf_event_intel_ds.c
--- a/arch/x86/kernel/cpu/perf_event_intel_ds.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_ds.c
@@ -311,9 +311,11 @@ static int alloc_bts_buffer(int cpu)
 	if (!x86_pmu.bts)
 		return 0;
 
-	buffer = kzalloc_node(BTS_BUFFER_SIZE, GFP_KERNEL, node);
-	if (unlikely(!buffer))
+	buffer = kzalloc_node(BTS_BUFFER_SIZE, GFP_KERNEL | __GFP_NOWARN, node);
+	if (unlikely(!buffer)) {
+		WARN_ONCE(1, "%s: BTS buffer allocation failure\n", __func__);
 		return -ENOMEM;
+	}
 
 	max = BTS_BUFFER_SIZE / BTS_RECORD_SIZE;
 	thresh = max / 16;

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2014-07-16 19:22 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-30 23:04 [patch] x86, perf: avoid spamming kernel log for bts buffer failure David Rientjes
2014-07-01  9:34 ` Peter Zijlstra
2014-07-02 13:16   ` Stephane Eranian
2014-07-02 13:31     ` Peter Zijlstra
2014-07-02 13:38       ` Stephane Eranian
2014-07-02 14:54         ` Peter Zijlstra
2014-07-02 23:30       ` David Rientjes
2014-07-14 23:33 ` David Rientjes
2014-07-15  8:53   ` Peter Zijlstra
2014-07-16 19:21 ` [tip:perf/urgent] perf/x86/intel: Avoid spamming kernel log for BTS " tip-bot for David Rientjes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).