Messages in this thread | | | Date | Wed, 25 Mar 2015 09:03:52 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH 1/4] tile: support arch_irq_work_raise |
| |
On Tue, Mar 24, 2015 at 06:06:26PM -0400, Chris Metcalf wrote: > On 3/24/2015 5:14 PM, Peter Zijlstra wrote: > >On Tue, Mar 24, 2015 at 03:21:32PM -0400, cmetcalf@ezchip.com wrote: > >>From: Chris Metcalf <cmetcalf@ezchip.com> > >> > >>Tile includes a hypervisor hook to deliver messages to arbitrary > >>tiles, so we can use that to raise an interrupt as soon as > >>possible on our own core. Unfortunately the Tilera hypervisor > >>disabled that support on principle in previous releases, but > >>it will be available in MDE 4.3.4 and later. > >Can you program a timer in the (recent) past which will instantly > >trigger an interrupt? This is what PPC64 does to implement the self-ipi. > > I looked in git history a bit and see commit 105988c015943 from 2009, > which looks like it was the basis for the powerpc support. I'm a little leery > of just randomly changing the in-flight timer decrementer value, though; > does the timer event_handler properly handle being called early, and > then properly handle resetting the decrementer to the right value? > I guess if both of those things are true, it seems plausible to adopt the > approach you suggested. > > On the other hand, the approach I coded up avoids making any of those > slightly scary assumptions about the timer subsystem, and I don't really > have a problem with saying you need a recent Tilera hypervisor binary if > you want to use NOHZ_FULL...
Fair enough; and your call obviously. Just wanted to share that there are alternative ways if you really need.
| |