From: Allen Kay <allen.m.kay@intel.com>
Date: Wed, 7 Oct 2009 17:27:51 +0000 (-0700)
Subject: PCI: add xen dom0 checking before ACS initialization
X-Git-Tag: firefly_0821_release~9833^2~3901^2~89
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=df0e97c6f1f2fdca686036998fe816cefd8e27d7;p=firefly-linux-kernel-4.4.55.git

PCI: add xen dom0 checking before ACS initialization

This patch is predicated on Jeremy's patch in include/xen/xen.h.  It'll
prevent ACS init unless the platform has both an IOMMU and we're running
as dom0.

Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
---

diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
index aac5b156a5c5..bb2cc39b64ff 100644
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
@@ -11,6 +11,7 @@
 #include <linux/cpumask.h>
 #include <linux/pci-aspm.h>
 #include <linux/iommu.h>
+#include <xen/xen.h>
 #include "pci.h"
 
 #define CARDBUS_LATENCY_TIMER	176	/* secondary latency timer */
@@ -1007,7 +1008,7 @@ static void pci_init_capabilities(struct pci_dev *dev)
 	pci_iov_init(dev);
 
 	/* Enable ACS P2P upstream forwarding */
-	if (iommu_found())
+	if (iommu_found() || xen_initial_domain())
 		pci_enable_acs(dev);
 }