[<prev] [next>] [day] [month] [year] [list]
Message-Id: <201005142232.o4EMWtV9017946@hera.kernel.org>
Date: Fri, 14 May 2010 22:32:55 GMT
From: "H. Peter Anvin" <hpa@...or.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
"H. Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...e.hu>,
Thomas Gleixner <tglx@...utronix.de>,
Petr Vandrovec <petr@...drovec.name>,
Jacob Pan <jacob.jun.pan@...el.com>,
Jesse Barnes <jbarnes@...tuousgeek.org>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: [GIT PULL] One additional x86 fix for 2.6.34
Hi Linus,
One additional fix for the 2.6.34 tree. It missed my push from
earlier today because I was waiting for confirmation from the original
reporter that it indeed solves the problem.
The following changes since commit 7f284d3cc96e02468a42e045f77af11e5ff8b095:
Frank Arnold (1):
x86, cacheinfo: Turn off L3 cache index disable feature in virtualized environments
are available in the git repository at:
ssh://master.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git x86-fixes-for-linus
H. Peter Anvin (1):
x86, mrst: Don't blindly access extended config space
arch/x86/pci/mrst.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
commit e9b1d5d0ff4d3ae86050dc4c91b3147361c7af9e
Author: H. Peter Anvin <hpa@...ux.intel.com>
Date: Fri May 14 13:55:57 2010 -0700
x86, mrst: Don't blindly access extended config space
Do not blindly access extended configuration space unless we actively
know we're on a Moorestown platform. The fixed-size BAR capability
lives in the extended configuration space, and thus is not applicable
if the configuration space isn't appropriately sized.
This fixes booting certain VMware configurations with CONFIG_MRST=y.
Moorestown will add a fake PCI-X 266 capability to advertise the
presence of extended configuration space.
Reported-and-tested-by: Petr Vandrovec <petr@...drovec.name>
Signed-off-by: H. Peter Anvin <hpa@...ux.intel.com>
Acked-by: Jacob Pan <jacob.jun.pan@...el.com>
Acked-by: Jesse Barnes <jbarnes@...tuousgeek.org>
LKML-Reference: <AANLkTiltKUa3TrKR1M51eGw8FLNoQJSLT0k0_K5X3-OJ@...l.gmail.com>
diff --git a/arch/x86/pci/mrst.c b/arch/x86/pci/mrst.c
index 8bf2fcb..1cdc02c 100644
--- a/arch/x86/pci/mrst.c
+++ b/arch/x86/pci/mrst.c
@@ -247,6 +247,10 @@ static void __devinit pci_fixed_bar_fixup(struct pci_dev *dev)
u32 size;
int i;
+ /* Must have extended configuration space */
+ if (dev->cfg_size < PCIE_CAP_OFFSET + 4)
+ return;
+
/* Fixup the BAR sizes for fixed BAR devices and make them unmoveable */
offset = fixed_bar_cap(dev->bus, dev->devfn);
if (!offset || PCI_DEVFN(2, 0) == dev->devfn ||
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists