The vGPU folks would like to trap the first access to a BAR by setting vm_ops on the VMAs produced by mmap-ing a VFIO device. The fault handler then can use remap_pfn_range to place some non-reserved pages in the VMA.
KVM lacks support for this kind of non-linear VM_PFNMAP mapping, and these patches should fix this. Thanks, Paolo Paolo Bonzini (2): KVM: MMU: prepare to support mapping of VM_IO and VM_PFNMAP frames KVM: MMU: try to fix up page faults before giving up mm/gup.c | 1 + virt/kvm/kvm_main.c | 55 ++++++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 51 insertions(+), 5 deletions(-) -- 1.8.3.1