[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v5 2/5] x86/hpet: Use singe apic vector rather than irq_descs for HPET interrupts

At 15:43 +0000 on 05 Mar (1394030623), Andrew Cooper wrote:
> This involves rewriting most of the MSI related HPET code, and as a result
> this patch looks very complicated.  It is probably best viewed as an end
> result, with the following notes explaining what is going on.
> The new logic is as follows:
>  * A single high priority vector is allocated and uses on all cpus.
>  * Reliance on the irq infrastructure is completely removed.
>  * Tracking of free hpet channels has changed.  It is now an individual
>    bitmap, and allocation is based on winning a test_and_clear_bit()
>    operation.
>  * There is a notion of strict ownership of hpet channels.
>  ** A cpu which owns an HPET channel can program it for a desired deadline.
>  ** A cpu which can't find a free HPET channel will have to share.
>  ** If an HPET firing at an appropriate time can be found (up to 20us late), a
>     CPU will simply request to be woken up with that HPET.
>  ** Failing finding an appropriate timed HPET, a CPU shall find the soonest
>     late HPET and program it earlier.
>  ** Failing any late HPETs, a CPU shall wake up with the latest early HPET it
>     can find.
>  ** Failing all else, a CPU shall retry to find a free HPET.  This guarantees
>     that a CPU will never leave hpet_broadcast_enter() without arranging an
>     interrupt.
>  * Some functions have been renamed to be more descriptive.  Some functions
>    have parameters changed to be more consistent.
> Contains a folded half bugfix from Frediano:
> Signed-off-by: Frediano Ziglio <frediano.ziglio@xxxxxxxxxx>
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> CC: Keir Fraser <keir@xxxxxxx>
> CC: Jan Beulich <JBeulich@xxxxxxxx>
> CC: Tim Deegan <tim@xxxxxxx>

Reviewed-by: Tim Deegan <tim@xxxxxxx>

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.