On Thu, Dec 12, 2019 at 01:08:14AM +0100, Paolo Bonzini wrote: > >> I'd say it won't be a big issue on locking 1/2M of host mem for a > >> vm... > >> Also note that if dirty ring is enabled, I plan to evaporate the > >> dirty_bitmap in the next post. The old kvm->dirty_bitmap takes > >> $GUEST_MEM/32K*2 mem. E.g., for 64G guest it's 64G/32K*2=4M. If with > >> dirty ring of 8 vcpus, that could be 64K*8=0.5M, which could be even > >> less memory used. > > > > Right - I think Avi described the bitmap in kernel memory as one of > > design mistakes. Why repeat that with the new design? > > Do you have a source for that? Nope, it was a private talk. > At least the dirty bitmap has to be > accessed from atomic context so it seems unlikely that it can be moved > to user memory. Why is that? We could surely do it from VCPU context? > The dirty ring could use user memory indeed, but it would be much harder > to set up (multiple ioctls for each ring? what to do if userspace > forgets one? etc.). Why multiple ioctls? If you do like virtio packed ring you just need the base and the size. -- MST