Having xen_intr_handle_upcall() return an int makes it match the generalwas originally implemented as a direct call
interrupt filter functionfrom an x86 assembly language interrupt hook. This is ignored by x86, but valuable toworks if you're
other architecturesx86-only, but is problematic for other architectures.
The lapic_eoi() call is only needed on x86. Using a driver_filter_t
hook removes the need to call critical_enter()/critical_exit().
Additionally the interrupt counters get taken care of outside of the Xen
driver.
Since this allows reporting of stray interrupts (unlikely, but bugs
could exist), implement the functionality. Presently I don't believe
any Xen device drivers have the potential to report stray interrupts,
but this allows them to do so. Also disable the call to lapic_eoi() on !x86Currently I believe this only works on
ARM64.