On Mon, Jun 30, 2014 at 04:04:08PM -0700, David Rientjes wrote: > 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.
Can you elaborate a bit under which conditions this triggered? Typically we should be doing fairly well allocating such buffers with GFP_KERNEL, that should allow things like compaction to run and create higher order pages. And the BTS (branch trace store) isn't _that_ large. That said, the patch is reasonable; although arguably we should maybe do the same to alloc_pebs_buffer().
pgp4yIkxiRkaK.pgp
Description: PGP signature