On Mon, Nov 11, 2019 at 10:56:21AM +0100, Jan Beulich wrote: > On 10.11.2019 10:25, Roger Pau Monne wrote: > > clear_IO_APIC_pin can be called after the iommu has been enabled, and > > using raw reads and writes to modify IO-APIC entries that have been > > setup to use interrupt remapping can lead to issues as some of the > > fields have different meaning when the IO-APIC entry is setup to point > > to an interrupt remapping table entry. > > > > The following ASSERT in AMD IOMMU code triggers afterwards as a result > > of the raw changes to IO-APIC entries performed by clear_IO_APIC_pin. > > > > (XEN) [ 10.082154] ENABLING IO-APIC IRQs > > (XEN) [ 10.087789] -> Using new ACK method > > (XEN) [ 10.093738] Assertion 'get_rte_index(rte) == offset' failed at > > iommu_intr.c:328 > > > > Fix this by making sure that modifications to entries are performed in > > non raw mode. > > ... when fields are affected which may either have changed meaning > with interrupt remapping, or which may need mirroring into IRTEs. > > > Reported-by: Sergey Dyasli <[email protected]> > > Signed-off-by: Roger Pau Monné <[email protected]> > > With the above addition (or something substantially similar) > Reviewed-by: Jan Beulich <[email protected]> > Of course the adjustment is easy enough to do while committing.
The adjustment LGTM, please do it at commit time unless there's something else that requires a resend of the series. Thanks, Roger. _______________________________________________ Xen-devel mailing list [email protected] https://lists.xenproject.org/mailman/listinfo/xen-devel
