Re: [PATCH v3 12/21] KVM: X86: Implement ring-based dirty memory tracking

From: Michael S. Tsirkin
Date: Fri Jan 17 2020 - 04:51:03 EST


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.

> --
> Peter Xu