On Fri, Jan 17, 2020 at 04:50:48AM -0500, Michael S. Tsirkin wrote: > On Thu, Jan 16, 2020 at 11:27:03AM -0500, Peter Xu wrote: > > On Thu, Jan 16, 2020 at 03:38:21AM -0500, Michael S. Tsirkin wrote: > > > On Thu, Jan 09, 2020 at 09:57:20AM -0500, Peter Xu wrote: > > > > + /* If to map any writable page within dirty ring, fail it */ > > > > + if ((kvm_page_in_dirty_ring(vcpu->kvm, vma->vm_pgoff) || > > > > + kvm_page_in_dirty_ring(vcpu->kvm, vma->vm_pgoff + pages - 1)) && > > > > + vma->vm_flags & VM_WRITE) > > > > + return -EINVAL; > > > > > > Worth thinking about other flags. Do we want to force VM_SHARED? > > > Disable VM_EXEC? > > > > Makes sense to me. I think it worths a standalone patch since they > > should apply for the whole per-vcpu mmaped regions rather than only > > for the dirty ring buffers. > > > > (Should include KVM_PIO_PAGE_OFFSET, KVM_COALESCED_MMIO_PAGE_OFFSET, > > KVM_S390_SIE_PAGE_OFFSET, kvm_run, and this new one) > > > > Thanks, > > > I don't think we can change UAPI for existing ones. > Userspace might be setting these by mistake. Right (especially for VM_EXEC)... I'll only check that for the new pages then. Thanks, -- Peter Xu