Messages in this thread | | | Date | Wed, 19 Feb 2014 14:02:36 -0800 | From | Dave Hansen <> | Subject | Re: [PATCH v1 03/11] perf: Allow for multiple ring buffers per event |
| |
On 02/17/2014 06:33 AM, Peter Zijlstra wrote: > Then write the PERF_RECORD_DATA structure into the normal ring-buffer > location; set data_offset to point to the first page boundary, data_size > to 1mb. > > Then frob things such that perf_mmap_to_page() for the next 1mb of pages > points to your buffer pages and wipe the page-table entries.
Wouldn't we have to teach a ton of code how to be IRQ safe for this to work? Just step one: how do we go modifying page tables safely from an interrupt? mm->page_table_lock is a plain non-irq spinlock.
| |