Unverified Commit e3cd8c9a authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!4112 PCI: Fail MSI-X mapping if MSI-X Table offset is out of range of BAR space

parents 8d81b3eb dc63fbe3
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -584,6 +584,12 @@ static void __iomem *msix_map_region(struct pci_dev *dev,
		return NULL;

	table_offset &= PCI_MSIX_TABLE_OFFSET;
	if (table_offset >= pci_resource_len(dev, bir)) {
		dev_err(&dev->dev,
			"MSI-X Table offset is out of range of BAR:%d!\n",
			bir);
		return NULL;
	}
	phys_addr = pci_resource_start(dev, bir) + table_offset;

	return ioremap(phys_addr, nr_entries * PCI_MSIX_ENTRY_SIZE);