Messages in this thread | | | Subject | Re: [PATCH -tip -v5] irq_work: generic hard-irq context callbacks | From | Peter Zijlstra <> | Date | Fri, 17 Sep 2010 15:06:42 +0200 |
| |
On Fri, 2010-09-17 at 10:05 +0800, Huang Ying wrote: > From: Peter Zijlstra <a.p.zijlstra@chello.nl> > > In order for other NMI context users that want to run things from > hard-IRQ context, extract the perf_event callback mechanism. > > Huang Ying: some fixes
I got complaints about a lacking changelog, how about something like the below?
---
Provide a mechanism that allows running code in IRQ context. It is most useful for NMI code that needs to interact with the rest of the system -- like wakeup a task to drain buffers.
Perf currently has such a mechanism, so extract that and provide it as a generic feature, independent of perf so that others may also benefit.
The IRQ context callback is generated through self-IPIs where possible, or on architectures like powerpc which have soft-disabled IRQs, its ran on the soft-enable path.
Architectures that don't have anything like this get to do with a callback from the timer tick. These architectures can call irq_run_work() at the tail of any IRQ handlers that might enqueue such work (like the perf IRQ handler) to avoid undue latencies in processing the work.
---
| |