Messages in this thread | | | Date | Mon, 13 Sep 2010 19:24:19 +0200 | Subject | Re: [PATCH] perf_events: improve DS/BTS/PEBS buffer allocation | From | Stephane Eranian <> |
| |
On Mon, Sep 13, 2010 at 5:41 PM, Peter Zijlstra <peterz@infradead.org> wrote: > On Mon, 2010-09-13 at 17:31 +0200, Stephane Eranian wrote: >> On Mon, Sep 13, 2010 at 5:24 PM, Peter Zijlstra <peterz@infradead.org> wrote: >> > On Mon, 2010-09-13 at 17:20 +0200, Stephane Eranian wrote: >> > >> >> That is the case we the sizes you have chosen today. For DS, we >> >> could round up to one page for now. >> > >> > Markus chose the BTS size, for PEBS a single page was plenty since we do >> > single event things (although we could do multiple for attr.precise_ip < >> > 2). >> > >> > For DS there's: >> > kmalloc_node(sizeof(struct ds), GFP_KERNEL | __GFP_ZERO, cpu_node(cpu)); >> > >> Ok, let try again with alloc_pages_node() + kmalloc_node(). >> I think we can stick with kmalloc() for DS because we are far from >> consuming a page. > > Thing is, if you're really seeing allocation failures, > alloc_pages_node() isn't going to help. And the problem is, these > allocations aren't movable, so memory compaction and all the other fancy > stuff aren't really going to help much :/ > Based on this comment, I assume that the only reason the allocation of the sampling buffer in perf_buffer_alloc() is immune to this is because you are allocating each page individually (order 0). Right? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |