On Tue, Nov 19, 2013 at 07:58:35AM +0100, Ingo Molnar wrote: > > * David Ahern <dsah...@gmail.com> wrote: > > > This is mmap'ed output, not the ring buffers or its stack. As the > > output file grows, new pages are needed and those are allocated on > > access via page faults. The ftruncate only extends the file size, it > > does not allocate pages at that time. > > Hm, doesn't MAP_POPULATE prefault pages in this case as well? > Prefaulting would avoid the most obvious page fault driven feedback > loops and it would probably be faster as well, because it avoids all > the pagefaults ...
MAP_POPULATE does indeed seem to write pre-fault for writable maps (mm/mlock.c:__mlock_vma_pages_range). And that does indeed seem to side-step the perf sw pagefault event, but that is arguably a perf bug. If we were to fix this, MAP_POPULATE would simply generate a metric ton of events, we'd have to write out with yet more MAP_POPULATE. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/