Messages in this thread | | | Date | Tue, 12 Jul 2011 12:08:18 +0300 | From | Avi Kivity <> | Subject | Re: [PATCH 1/3] perf: add context field to perf_event |
| |
On 07/12/2011 11:38 AM, Peter Zijlstra wrote: > On Tue, 2011-07-12 at 10:20 +0300, Avi Kivity wrote: > > > Maybe we need a generic "run this function in this task's context" > > mechanism instead. Like an IPI, but targeting tasks instead of cpus. > > > > kernel/event/core.c:task_function_call() like?
Similar, but with stronger guarantees: when the function is called, current == p, and the task was either sleeping or in userspace.
This can be used to reduce synchronization requirements between tasks. For example, you can set a task-local bit flag with this, without atomics. If this is rare enough, it's a net win compared to adding atomics.
aio completions might also make use of this.
-- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain.
| |