Merge branches 'iommu/fixes', 'arm/msm', 'arm/tegra', 'arm/mediatek', 'x86/vt-d', 'x86/amd', 'hyper-v' and 'core' into next
This commit is contained in:

@@ -18,6 +18,7 @@
|
||||
*/
|
||||
|
||||
#define pr_fmt(fmt) "AMD-Vi: " fmt
|
||||
#define dev_fmt(fmt) pr_fmt(fmt)
|
||||
|
||||
#include <linux/ratelimit.h>
|
||||
#include <linux/pci.h>
|
||||
@@ -279,10 +280,10 @@ static u16 get_alias(struct device *dev)
|
||||
return pci_alias;
|
||||
}
|
||||
|
||||
pr_info("Using IVRS reported alias %02x:%02x.%d "
|
||||
"for device %s[%04x:%04x], kernel reported alias "
|
||||
pci_info(pdev, "Using IVRS reported alias %02x:%02x.%d "
|
||||
"for device [%04x:%04x], kernel reported alias "
|
||||
"%02x:%02x.%d\n", PCI_BUS_NUM(ivrs_alias), PCI_SLOT(ivrs_alias),
|
||||
PCI_FUNC(ivrs_alias), dev_name(dev), pdev->vendor, pdev->device,
|
||||
PCI_FUNC(ivrs_alias), pdev->vendor, pdev->device,
|
||||
PCI_BUS_NUM(pci_alias), PCI_SLOT(pci_alias),
|
||||
PCI_FUNC(pci_alias));
|
||||
|
||||
@@ -293,9 +294,8 @@ static u16 get_alias(struct device *dev)
|
||||
if (pci_alias == devid &&
|
||||
PCI_BUS_NUM(ivrs_alias) == pdev->bus->number) {
|
||||
pci_add_dma_alias(pdev, ivrs_alias & 0xff);
|
||||
pr_info("Added PCI DMA alias %02x.%d for %s\n",
|
||||
PCI_SLOT(ivrs_alias), PCI_FUNC(ivrs_alias),
|
||||
dev_name(dev));
|
||||
pci_info(pdev, "Added PCI DMA alias %02x.%d\n",
|
||||
PCI_SLOT(ivrs_alias), PCI_FUNC(ivrs_alias));
|
||||
}
|
||||
|
||||
return ivrs_alias;
|
||||
@@ -545,7 +545,7 @@ static void amd_iommu_report_page_fault(u16 devid, u16 domain_id,
|
||||
dev_data = get_dev_data(&pdev->dev);
|
||||
|
||||
if (dev_data && __ratelimit(&dev_data->rs)) {
|
||||
dev_err(&pdev->dev, "Event logged [IO_PAGE_FAULT domain=0x%04x address=0x%llx flags=0x%04x]\n",
|
||||
pci_err(pdev, "Event logged [IO_PAGE_FAULT domain=0x%04x address=0x%llx flags=0x%04x]\n",
|
||||
domain_id, address, flags);
|
||||
} else if (printk_ratelimit()) {
|
||||
pr_err("Event logged [IO_PAGE_FAULT device=%02x:%02x.%x domain=0x%04x address=0x%llx flags=0x%04x]\n",
|
||||
@@ -2258,8 +2258,7 @@ static int amd_iommu_add_device(struct device *dev)
|
||||
ret = iommu_init_device(dev);
|
||||
if (ret) {
|
||||
if (ret != -ENOTSUPP)
|
||||
pr_err("Failed to initialize device %s - trying to proceed anyway\n",
|
||||
dev_name(dev));
|
||||
dev_err(dev, "Failed to initialize - trying to proceed anyway\n");
|
||||
|
||||
iommu_ignore_device(dev);
|
||||
dev->dma_ops = NULL;
|
||||
@@ -2569,6 +2568,7 @@ static int map_sg(struct device *dev, struct scatterlist *sglist,
|
||||
struct scatterlist *s;
|
||||
unsigned long address;
|
||||
u64 dma_mask;
|
||||
int ret;
|
||||
|
||||
domain = get_domain(dev);
|
||||
if (IS_ERR(domain))
|
||||
@@ -2591,7 +2591,6 @@ static int map_sg(struct device *dev, struct scatterlist *sglist,
|
||||
|
||||
for (j = 0; j < pages; ++j) {
|
||||
unsigned long bus_addr, phys_addr;
|
||||
int ret;
|
||||
|
||||
bus_addr = address + s->dma_address + (j << PAGE_SHIFT);
|
||||
phys_addr = (sg_phys(s) & PAGE_MASK) + (j << PAGE_SHIFT);
|
||||
@@ -2612,8 +2611,8 @@ static int map_sg(struct device *dev, struct scatterlist *sglist,
|
||||
return nelems;
|
||||
|
||||
out_unmap:
|
||||
pr_err("%s: IOMMU mapping error in map_sg (io-pages: %d)\n",
|
||||
dev_name(dev), npages);
|
||||
dev_err(dev, "IOMMU mapping error in map_sg (io-pages: %d reason: %d)\n",
|
||||
npages, ret);
|
||||
|
||||
for_each_sg(sglist, s, nelems, i) {
|
||||
int j, pages = iommu_num_pages(sg_phys(s), s->length, PAGE_SIZE);
|
||||
@@ -2807,7 +2806,7 @@ static int init_reserved_iova_ranges(void)
|
||||
IOVA_PFN(r->start),
|
||||
IOVA_PFN(r->end));
|
||||
if (!val) {
|
||||
pr_err("Reserve pci-resource range failed\n");
|
||||
pci_err(pdev, "Reserve pci-resource range %pR failed\n", r);
|
||||
return -ENOMEM;
|
||||
}
|
||||
}
|
||||
@@ -3177,8 +3176,7 @@ static void amd_iommu_get_resv_regions(struct device *dev,
|
||||
length, prot,
|
||||
IOMMU_RESV_DIRECT);
|
||||
if (!region) {
|
||||
pr_err("Out of memory allocating dm-regions for %s\n",
|
||||
dev_name(dev));
|
||||
dev_err(dev, "Out of memory allocating dm-regions\n");
|
||||
return;
|
||||
}
|
||||
list_add_tail(®ion->list, head);
|
||||
|
Reference in New Issue
Block a user