[SRU][R:linux-gcp][PULL] Backport Linux 7.1 VFIO patches to gcp 7.0
Ian Whitfield
ian.whitfield at canonical.com
Wed Sep 2 17:59:41 UTC 2026
BugLink: https://bugs.launchpad.net/bugs/2165199
SRU Justification
[Impact]
Google has requested a set of VFIO patches applied upstream since 7.0 to be
backported to the gcp kernel.
[Fix]
This is the list of target patches requested to port to gcp 7.0:
request: https://lore.kernel.org/all/20251120-dmabuf-vfio-v9-0-d7f71607f371@nvidia.com/
f58ef9d1d135 ("PCI/P2PDMA: Separate the mmap() support from the core logic")
requires fix: 80d9411c00e8 ("PCI/P2PDMA: Add missing struct p2pdma_provider documentation")
d4504262f745 ("PCI/P2PDMA: Simplify bus address mapping API")
372d6d1b8ae3 ("PCI/P2PDMA: Refactor to separate core P2P functionality from memory allocation")
395698bd2cd7 ("PCI/P2PDMA: Provide an access to pci_p2pdma_map_type() function")
50d44fce53b6 ("PCI/P2PDMA: Document DMABUF model")
3aa31a8bb11e ("dma-buf: provide phys_vec to scatter-gather mapping routine")
requires fix: 590d74568030 ("dma-buf: fix integer overflow in fill_sg_entry() for buffers >= 8GiB")
64a5dedcff80 ("vfio: Export vfio device get and put registration helpers")
47d13c939d89 ("vfio/pci: Share the core device pointer while invoking feature functions")
35c3503908d3 ("vfio/pci: Enable peer-to-peer DMA transactions by default")
5d74781ebc86 ("vfio/pci: Add dma-buf export support for MMIO regions")
requires fix: e98137f0a874 ("vfio/pci: Fix double free in dma-buf feature")
5415d887db0e ("vfio/nvgrace: Support get_dmabuf_phys")
request: https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next/+/6ffe939bf94fbbeaaa4050a0e9c22820e959b15f
6ffe939bf94f ("vfio: Permit VFIO to work with pinned importers")
request: https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next/+/1a8a5227f22996d3e503c60569b1813a404da033
1a8a5227f229 ("vfio: Wait for dma-buf invalidation to complete")
request: https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next/+/95308225e5baeaae1e313816059c59a0036ab6b2
95308225e5ba ("dma-buf: Rename dma_buf_move_notify() to dma_buf_invalidate_mappings()")
requires fix 61c0f69a2ff79 ("RDMA/uverbs: Update for semantic conflict with drm-misc")
request: https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next/+/61ceaf236115f20f4fdd7cf60f883ada1063349a
61ceaf236115 ("vfio: Prevent from pinned DMABUF importers to attach to VFIO DMABUF")
request: https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next/+/b703b31ea8cd22c1915cfdd6d8e39bf39ec64c8b
b703b31ea8cd ("types: reuse common phys_vec type instead of DMABUF open‑coded variant")
request: https://patchwork.kernel.org/project/linux-rdma/list/?series=1062089&state=*
553dfa8cbd0c ("RDMA/umem: Add ib_umem_dmabuf_get_pinned_and_lock helper")
797291a66ce3 ("RDMA/umem: Move umem dmabuf revoke logic into helper function")
ff85a2ebacbd ("RDMA/umem: Add pinned revocable dmabuf import interface")
3a0b171302ee ("RDMA/umem: Add helpers for umem dmabuf revoke lock")
4707bf5f6c86 ("RDMA/irdma: Add support for revocable pinned dmabuf import")
request: https://patchwork.ozlabs.org/project/linux-pci/list/?series=499311
1a1f96e3e2a8d ("PCI/P2PDMA: Allow wildcard Device IDs in host bridge list")
70cf146a674c4 ("PCI/P2PDMA: Add Google SoCs to the P2P DMA host bridge list")
Of these, many had already been applied. Any patches that were originally
submitted together in a PR were pulled in as well, unless they were deemed
problematic or risky. This is to keep the gcp 7.0 VFIO source closer to mainline
and more prepared for future porting work.
[Test Plan]
Patches will be reviewed by Google and boot tested by us.
[Regression potential]
These patches target VFIO changes primarily, regressions are most likely to
occur on bare-metal deployments with the vfio-pci module loaded.
[Other]
SF: 00434577
----------------------------------------------------------------
The following changes since commit b10f9a7a8b81397568574808bc146040daa869b5:
UBUNTU: Ubuntu-gcp-7.0.0-1011.11 (2026-08-11 10:46:55 -0400)
are available in the Git repository at:
https://git.launchpad.net/~ijwhitfield/ubuntu/+source/linux-gcp/+git/resolute vfio1.2
for you to fetch changes up to 94ff02d8970cd27cb18fd21f4e610c1b13750dbf:
UBUNTU: [Config] gcp: Add DMABUF_MOVE_NOTIFY annotation (2026-09-02 12:03:00 -0400)
----------------------------------------------------------------
Ankit Soni (1):
iommufd: Take dma_resv lock before dma_buf_unpin() in release path
Ian Whitfield (1):
UBUNTU: [Config] gcp: Add DMABUF_MOVE_NOTIFY annotation
Jacob Moroni (7):
RDMA/umem: Add ib_umem_dmabuf_get_pinned_and_lock helper
RDMA/umem: Move umem dmabuf revoke logic into helper function
RDMA/umem: Add pinned revocable dmabuf import interface
RDMA/umem: Add helpers for umem dmabuf revoke lock
RDMA/irdma: Add support for revocable pinned dmabuf import
PCI/P2PDMA: Allow wildcard Device IDs in host bridge list
PCI/P2PDMA: Add Google SoCs to the P2P DMA host bridge list
Leon Romanovsky (7):
dma-buf: Rename dma_buf_move_notify() to dma_buf_invalidate_mappings()
dma-buf: Always build with DMABUF_MOVE_NOTIFY
vfio: Wait for dma-buf invalidation to complete
dma-buf: Make .invalidate_mapping() truly optional
dma-buf: Add dma_buf_attach_revocable()
vfio: Permit VFIO to work with pinned importers
iommufd: Add dma_buf_pin()
Mark Brown (1):
RDMA/uverbs: Update for semantic conflict with drm-misc
Sumit Semwal (1):
dma-buf: fix htmldocs error for dma_buf_attach_revocable
debian.gcp/config/annotations | 1 +
drivers/dma-buf/Kconfig | 12 --
drivers/dma-buf/dma-buf.c | 66 ++++++++--
drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 10 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 2 +-
drivers/gpu/drm/amd/amdkfd/Kconfig | 2 +-
drivers/gpu/drm/xe/tests/xe_dma_buf.c | 3 +-
drivers/gpu/drm/xe/xe_bo.c | 2 +-
drivers/gpu/drm/xe/xe_dma_buf.c | 12 +-
drivers/infiniband/core/ib_core_uverbs.c | 2 +-
drivers/infiniband/core/umem_dmabuf.c | 140 ++++++++++++++++++----
drivers/infiniband/core/uverbs_std_types_dmabuf.c | 2 +-
drivers/infiniband/hw/irdma/verbs.c | 105 ++++++++++++++--
drivers/iommu/iommufd/pages.c | 11 +-
drivers/iommu/iommufd/selftest.c | 2 +-
drivers/pci/p2pdma.c | 10 +-
drivers/vfio/pci/vfio_pci_dmabuf.c | 80 ++++++++++---
include/linux/dma-buf.h | 11 +-
include/linux/pci_ids.h | 2 +
include/rdma/ib_umem.h | 23 ++++
20 files changed, 388 insertions(+), 110 deletions(-)
More information about the kernel-team
mailing list