Commit 7a094909 authored by Bjorn Helgaas's avatar Bjorn Helgaas
Browse files

PCI: Remove sysfs resource mmap warning



When a process uses sysfs and tries to mmap more space than is available in
a PCI BAR, we emit a warning and a backtrace.  The mmap fails anyway, so
the backtrace is mainly for debugging.  But in general we don't emit kernel
messages when syscalls return failure.

The similar procfs mmap path simply fails the mmap with no warning.  Remove
the sysfs warning.

Reported-by: default avatarFengguang Wu <fengguang.wu@intel.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
parent 1291a0d5
Loading
Loading
Loading
Loading
+2 −7
Original line number Diff line number Diff line
@@ -1216,14 +1216,9 @@ static int pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr,
	if (res->flags & IORESOURCE_MEM && iomem_is_exclusive(res->start))
		return -EINVAL;

	if (!pci_mmap_fits(pdev, bar, vma, PCI_MMAP_SYSFS)) {
		WARN(1, "process \"%s\" tried to map 0x%08lx bytes at page 0x%08lx on %s BAR %d (start 0x%16Lx, size 0x%16Lx)\n",
			current->comm, vma->vm_end-vma->vm_start, vma->vm_pgoff,
			pci_name(pdev), bar,
			(u64)pci_resource_start(pdev, bar),
			(u64)pci_resource_len(pdev, bar));
	if (!pci_mmap_fits(pdev, bar, vma, PCI_MMAP_SYSFS))
		return -EINVAL;
	}

	mmap_type = res->flags & IORESOURCE_MEM ? pci_mmap_mem : pci_mmap_io;

	return pci_mmap_resource_range(pdev, bar, vma, mmap_type, write_combine);