]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
PCI/P2PDMA: Avoid returning a provider for non_mappable_bars
authorMatt Evans <mattev@meta.com>
Thu, 23 Apr 2026 17:30:51 +0000 (10:30 -0700)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 27 Apr 2026 14:47:24 +0000 (09:47 -0500)
commit951ebc18d181af1d90deddbc0ef3269061d6e03c
tree9420aae98f1223d8196cae1198dad1ee39925b36
parent254f49634ee16a731174d2ae34bc50bd5f45e731
PCI/P2PDMA: Avoid returning a provider for non_mappable_bars

Extend the checks in pcim_p2pdma_init() and pcim_p2pdma_provider() to
exclude functions that have pdev->non_mappable_bars set.

Consumers such as VFIO were previously able to map these for access by the
CPU or P2P.  Update the comment on non_mappable_bars to show it refers to
any access, not just userspace CPU access.

Fixes: 372d6d1b8ae3c ("PCI/P2PDMA: Refactor to separate core P2P functionality from memory allocation")
Suggested-by: Alex Williamson <alex@shazbot.org>
Signed-off-by: Matt Evans <mattev@meta.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Niklas Schnelle <schnelle@linux.ibm.com>
Reviewed-by: Alex Williamson <alex@shazbot.org>
Link: https://patch.msgid.link/20260423173051.1999679-1-mattev@meta.com
drivers/pci/p2pdma.c
include/linux/pci.h