On 06/07/2016 04:00, Xiao Guangrong wrote: > > > On 07/05/2016 08:18 PM, Paolo Bonzini wrote: >> >> >> On 05/07/2016 07:41, Neo Jia wrote: >>> On Thu, Jun 30, 2016 at 03:01:49PM +0200, Paolo Bonzini wrote: >>>> 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. >>> >>> Hi Paolo, >>> >>> I have tested your patches with the mediated passthru patchset that >>> is being >>> reviewed in KVM and QEMU mailing list. >>> >>> The fault handler gets called successfully and the previously mapped >>> memory gets >>> unmmaped correctly via unmap_mapping_range. >> >> Great, then I'll include them in 4.8. > > Code is okay, but i still suspect if this implementation, fetch mmio > pages in fault handler, is needed. We'd better include these patches > after the design of vfio framework is decided.
I think that this fixes a bug anyway, the previous handling of VM_PFNMAP is too simplistic. Paolo