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

Re: [Xen-devel] [RFC v1 02/15] vt-d: VT-d Posted-Interrupts feature detection



On 27/03/15 01:21, Wu, Feng wrote:
+     * Remapping, and Posted Interrupt
        */
       for_each_drhd_unit ( drhd )
       {
@@ -2146,7 +2148,13 @@ int __init intel_vtd_setup(void)
               iommu_qinval = 0;

           if ( iommu_intremap && !ecap_intr_remap(iommu->ecap) )
+        {
               iommu_intremap = 0;
+            iommu_intpost = 0;
+        }
+
+        if ( iommu_intpost && !cap_intr_post(iommu->cap))
Missing space inside the outer bracket.

I am wondering whether it might be easier, instead of having
"iommu_intremap = 0; iommu_intpost = 0" all over the place, to instead
insist that one must check "iommu_intremap && iommu_intpost".
It that case, user must check "iommu_intremap && iommu_intpost" together,
my idea in this patchset is the when iommu_intpost == 1 guarantees "iommu_intremap 
== 1",
so we only need to check iommu_intpost later.

If the configuration gets much more complicated, it might be worth introducing iommu_disable(foo)/iommu_enable(foo) functions which take care of ensuring that the interdependences are met.

For now, this is probably the more simple solution.

Out of interest, which platforms have intpost capabilities?
Another Broadwell platform, not launched yet.

Broadwell EP/EX ? I have an SDP to hand, but as it claims to be a "Genuine Intel(R) CPU 0000 @ 1.70GHz", it is not completely trivial to work out what platform it is exactly.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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