linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/7] disable bridge ari forwarding after connected ari device hot removed
@ 2012-10-09  3:03 Yijing Wang
  2012-10-09  3:03 ` [PATCH 1/7] PCI: rework pci_enable_ari for support disable ari forwarding Yijing Wang
                   ` (8 more replies)
  0 siblings, 9 replies; 16+ messages in thread
From: Yijing Wang @ 2012-10-09  3:03 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: jiang.liu, Hanjun Guo, linux-pci, Yinghai Lu, Yijing Wang

pci_enable_ari will be called if an ARI pci device found, then set its bridge ARI Forwarding Enable
bit in Device Control 2 Register. But the bridge ARI Forwarding Enable bit will never be cleared
when an ARI device hot removed.

my steps:
1. Hot add an ARI pci device;
2. Hot remove the ARI pci device;
3. Hot add an non ARI pci device;

In this case, after setp 3, we could only find fun 0 of non ARI pci device because of its bridge ARI Forwarding Enable
bit set.

As PCIe Spec 2.0(6.13/441) recommends:
"Following a hot-plug event below a Downstream Port, it is strongly recommended that software
Clear the ARI Forwarding Enable bit in the Downstream Port until software determines that a
newly added component is in fact an ARI Device"

This series of patches fix this problem.

Yijing Wang (7):
  PCI: rework pci_enable_ari for support disable ari forwarding
  PCI, acpiphp: disable ARI forwarding for acpiphp
  PCI, pciehp: disable ARI forwarding for pciehp
  PCI, cpqphp: disable ARI forwarding for cpqphp
  PCI, shpchp: disable ARI forwarding for shpchp
  PCI, sgi: disable ARI forwarding for sgiphp
  PCI, ibmphp: disable ARI forwarding for ibmphp

 drivers/pci/hotplug/acpiphp_glue.c     |    1 +
 drivers/pci/hotplug/cpci_hotplug_pci.c |    1 +
 drivers/pci/hotplug/cpqphp_pci.c       |    1 +
 drivers/pci/hotplug/ibmphp_core.c      |    1 +
 drivers/pci/hotplug/pciehp_pci.c       |    1 +
 drivers/pci/hotplug/sgi_hotplug.c      |    1 +
 drivers/pci/hotplug/shpchp_pci.c       |    1 +
 drivers/pci/pci.c                      |   16 +++++++++++-----
 drivers/pci/pci.h                      |    2 +-
 drivers/pci/probe.c                    |    2 +-
 10 files changed, 20 insertions(+), 7 deletions(-)



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2012-10-09  8:48 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-09  3:03 [PATCH 0/7] disable bridge ari forwarding after connected ari device hot removed Yijing Wang
2012-10-09  3:03 ` [PATCH 1/7] PCI: rework pci_enable_ari for support disable ari forwarding Yijing Wang
2012-10-09  3:03 ` [PATCH 2/7] PCI, acpiphp: disable ARI forwarding for acpiphp Yijing Wang
2012-10-09  3:03 ` [PATCH 3/7] PCI, pciehp: disable ARI forwarding for pciehp Yijing Wang
2012-10-09  3:03 ` [PATCH 4/7] PCI, cpqphp: disable ARI forwarding for cpqphp Yijing Wang
2012-10-09  3:03 ` [PATCH 5/7] PCI, shpchp: disable ARI forwarding for shpchp Yijing Wang
2012-10-09  3:03 ` [PATCH 6/7] PCI, sgi: disable ARI forwarding for sgiphp Yijing Wang
2012-10-09  3:03 ` [PATCH 7/7] PCI, ibmphp: disable ARI forwarding for ibmphp Yijing Wang
2012-10-09  3:08 ` [PATCH 0/7] disable bridge ari forwarding after connected ari device hot removed Jiang Liu
2012-10-09  3:15   ` Yijing Wang
2012-10-09  3:42 ` Jiang Liu
2012-10-09  7:42   ` Yijing Wang
2012-10-09  7:51     ` Jiang Liu
2012-10-09  8:14       ` Yijing Wang
2012-10-09  8:16         ` Jiang Liu
2012-10-09  8:47         ` Jiang Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).