Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
x86/pci: fix mmconfig detection with 32bit near 4g
PCI: use fixed-up device class when configuring device

+5 -3
+3 -3
arch/x86/pci/mmconfig-shared.c
··· 375 375 if (!fixmem32) 376 376 return AE_OK; 377 377 if ((mcfg_res->start >= fixmem32->address) && 378 - (mcfg_res->end <= (fixmem32->address + 378 + (mcfg_res->end < (fixmem32->address + 379 379 fixmem32->address_length))) { 380 380 mcfg_res->flags = 1; 381 381 return AE_CTRL_TERMINATE; ··· 392 392 return AE_OK; 393 393 394 394 if ((mcfg_res->start >= address.minimum) && 395 - (mcfg_res->end <= (address.minimum + address.address_length))) { 395 + (mcfg_res->end < (address.minimum + address.address_length))) { 396 396 mcfg_res->flags = 1; 397 397 return AE_CTRL_TERMINATE; 398 398 } ··· 418 418 struct resource mcfg_res; 419 419 420 420 mcfg_res.start = start; 421 - mcfg_res.end = end; 421 + mcfg_res.end = end - 1; 422 422 mcfg_res.flags = 0; 423 423 424 424 acpi_get_devices("PNP0C01", find_mboard_resource, &mcfg_res, NULL);
+2
drivers/pci/probe.c
··· 745 745 746 746 /* Early fixups, before probing the BARs */ 747 747 pci_fixup_device(pci_fixup_early, dev); 748 + /* device class may be changed after fixup */ 749 + class = dev->class >> 8; 748 750 749 751 switch (dev->hdr_type) { /* header type */ 750 752 case PCI_HEADER_TYPE_NORMAL: /* standard header */