|
|
|
|
|
|
|
|
|
|
xen-devel
RE: [Xen-devel] [PATCH 3 of 3] kexec: disable iommu jumping into the kdu
Andrew,
Given that there is some cleanup work needed with x2apic/suspend, you can go
ahead and add calls to disable_intremap() and disable_qinval() in vtd_suspend()
for now. This seems the right thing to do by looking at the code. We will
look at this again when we revisit and clean up x2apic/suspend code.
Once you are done with kexec work, can you write a xen wiki page so that we can
follow your instructions to test kexec when we touch this part of the code?
Allen
-----Original Message-----
From: Kay, Allen M
Sent: Thursday, May 19, 2011 5:33 PM
To: 'Konrad Rzeszutek Wilk'; Andrew Cooper
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: RE: [Xen-devel] [PATCH 3 of 3] kexec: disable iommu jumping into the
kdump kernel
The functions iommu_enable_x2apic_IR()/iommu_disable_x2apic_IR() should really
be architectural specific. They should not be called from common code without
going through iommu API. The reason it worked on AMD box is because it returns
if the list acpi_drhd_units is empty. On AMD box, this list is empty since it
is only populated only on Intel VT-d enabled systems. We will clean this up.
I don't know why is disable_intremap() called separately. It seems to me we
should be able to call disable_qinval() and disable_intremap() in vtd_suspend().
I will give it a try tomorrow and see if I can find a clue the code is written
this way.
Allen
-----Original Message-----
From: Konrad Rzeszutek Wilk [mailto:konrad.wilk@xxxxxxxxxx]
Sent: Thursday, May 19, 2011 7:32 AM
To: Andrew Cooper; Kay, Allen M
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-devel] [PATCH 3 of 3] kexec: disable iommu jumping into the
kdump kernel
> >>>What about AMD VI IOMMUs? Does it work when that IOMMU is used?
> >>>
> >>It worked on the AMD box I tested the code on. Like the comment
> >>says - as far as I can tell, it is architecture independent code.
> >>>>+ */
> >>>>+ iommu_disable_x2apic_IR();
> >>>Can't that function be done in the suspend code of the IOMMU?
> >>There is a comment in iommu suspend stating that it cant and isn't
> >>done, but rather is left for the local/ioapic_suspend functions
> >>which dont properly work in the kexec path.
> >OK, how about just moving it out of driver/passthrought/vtd then?
> Because that code is fragile enough without me poking about in it.
> I would prefer someone with more knowledge about IOMMU to make that
> call.
OK. Lets CC him here then.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|