[PATCH 3/6] PCI/P2PDMA: create VMA without page_mkwrite() operator
From: Martin Oliveira
Date: Wed Jun 05 2024 - 15:30:33 EST
The P2PDMA code does not need (or want) a page_mkwrite() operator on its
VMA.
Furthermore, having the page_mkwrite() operator causes
writable_file_mapping_allowed() to fail due to
vma_needs_dirty_tracking() on the gup flow, which is a pre-requisite for
enabling P2PDMA with FOLL_LONGTERM use cases.
Co-developed-by: Logan Gunthorpe <logang@xxxxxxxxxxxx>
Signed-off-by: Logan Gunthorpe <logang@xxxxxxxxxxxx>
Signed-off-by: Martin Oliveira <martin.oliveira@xxxxxxxxxxxxx>
---
drivers/pci/p2pdma.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/pci/p2pdma.c b/drivers/pci/p2pdma.c
index 4f47a13cb500..ac07053abfea 100644
--- a/drivers/pci/p2pdma.c
+++ b/drivers/pci/p2pdma.c
@@ -171,6 +171,7 @@ static struct bin_attribute p2pmem_alloc_attr = {
* to be very large.
*/
.size = SZ_1T,
+ .mmap_allocates = true,
};
static struct attribute *p2pmem_attrs[] = {
--
2.34.1