RE: [PATCH ACS v4 1/1] Enabling PCI ACS P2P upstream forwarding

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

 



Thanks Chris, I was not aware of these two functions.  I have made the following change:

	if (iommu_found() || xen_initial_domain())
		pci_enable_acs(dev);

xen_intial_domain() should take care of dom0 case.  We just make the rough assumption that P2P upstream forwarding is needed if we are running on top of xen HV - similar to what we are doing for native kernel case.

If this is ok, I'm going to re-spin the patch.  Separate out xen_initial_domain() modification since it is predicated on Jeremy's xen.h patch.

-----Original Message-----
From: Chris Wright [mailto:chrisw@xxxxxxxxxxxx] 
Sent: Tuesday, October 06, 2009 4:42 PM
To: Kay, Allen M
Cc: linux-kernel@xxxxxxxxxxxxxxx; linux-pci@xxxxxxxxxxxxxxx; jbarnes@xxxxxxxxxxxxxxxx; matthew@xxxxxx; chris@xxxxxxxxxxxx; jeremy@xxxxxxxx
Subject: Re: [PATCH ACS v4 1/1] Enabling PCI ACS P2P upstream forwarding

* Allen Kay (allen.m.kay@xxxxxxxxx) wrote:
> +#ifdef CONFIG_DMAR
> +extern int iommu_detected;
> +#endif

This should not be needed.

> +
> +#ifdef CONFIG_XEN
> +extern int xen_domain_type;
> +#endif

Nor this (there's already a check for is dom0 called xen_initial_domain(),
but unclear it's relevant yet for this patch).

> +
> +	/* Enable ACS P2P upstream forwarding if HW iommu is detected */
> +	if (iommu_detected)

I think you'd want iommu_found() instead.  To avoid, e.g., GART
triggering this one.

> +		pci_enable_acs(dev);
> +
> +#ifdef CONFIG_XEN
> +	/* HW iommu is not visible in xen dom0 */
> +	if (xen_domain_type)
> +		pci_enable_acs(dev);

could do this (xen_initial_domain()) above, but it's only relevant for
dom0 (so not needed yet?), and really seems to like it should be done by hv.

thanks,
-chris
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux