Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

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:
PCI MSI: Fix MSI-X with NIU cards
PCI: Fix pci-e port driver slot_reset bad default return value

+10 -3
+6 -2
drivers/pci/msi.c
··· 455 455 entry->msi_attrib.default_irq = dev->irq; 456 456 entry->msi_attrib.pos = pos; 457 457 entry->mask_base = base; 458 - entry->masked = readl(base + j * PCI_MSIX_ENTRY_SIZE + 459 - PCI_MSIX_ENTRY_VECTOR_CTRL_OFFSET); 460 458 msix_mask_irq(entry, 1); 461 459 462 460 list_add_tail(&entry->list, &dev->msi_list); ··· 490 492 pci_intx_for_msi(dev, 0); 491 493 msix_set_enable(dev, 1); 492 494 dev->msix_enabled = 1; 495 + 496 + list_for_each_entry(entry, &dev->msi_list, list) { 497 + int vector = entry->msi_attrib.entry_nr; 498 + entry->masked = readl(base + vector * PCI_MSIX_ENTRY_SIZE + 499 + PCI_MSIX_ENTRY_VECTOR_CTRL_OFFSET); 500 + } 493 501 494 502 return 0; 495 503 }
+3
drivers/pci/pcie/aer/aerdrv.h
··· 95 95 static inline pci_ers_result_t merge_result(enum pci_ers_result orig, 96 96 enum pci_ers_result new) 97 97 { 98 + if (new == PCI_ERS_RESULT_NONE) 99 + return orig; 100 + 98 101 switch (orig) { 99 102 case PCI_ERS_RESULT_CAN_RECOVER: 100 103 case PCI_ERS_RESULT_RECOVERED:
+1 -1
drivers/pci/pcie/portdrv_pci.c
··· 200 200 201 201 static pci_ers_result_t pcie_portdrv_slot_reset(struct pci_dev *dev) 202 202 { 203 - pci_ers_result_t status = PCI_ERS_RESULT_NONE; 203 + pci_ers_result_t status = PCI_ERS_RESULT_RECOVERED; 204 204 int retval; 205 205 206 206 /* If fatal, restore cfg space for possible link reset at upstream */