[PATCH 0/2] PCI: decode disable fixes

From: Bjorn Helgaas
Date: Mon Jul 09 2012 - 14:20:11 EST


Since 2.6.36 (253d2e5498), we've disabled MEM & IO decoding while we size
BARs (except for host bridge devices). These patches tweak this in two
ways:

1) We only kept decoding disabled while sizing the low-order dword
of 64-bit BARs. I think we should keep it disabled while we do the
high-order dword also.

2) I think we should also disable decoding while updating 64-bit BARs,
e.g., when we move a device into an aperture of an upstream bridge. I'm
only proposing to disable decoding for 64-bit BAR updates because 32-bit
ones can be done atomically, while 64-bit updates require two writes and
the half-written state is a potential problem.

I'm considering these changes for the 3.6 merge window, which is
approaching fast, so let me know if you see issues with either of these.

---

Bjorn Helgaas (2):
PCI: leave MEM and IO decoding disabled during 64-bit BAR sizing, too
PCI: disable MEM decoding while updating 64-bit MEM BARs


drivers/pci/probe.c | 6 +++---
drivers/pci/setup-res.c | 18 ++++++++++++++++++
2 files changed, 21 insertions(+), 3 deletions(-)

--
Bjorn
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/