On Mon, 2011-04-11 at 14:01 +0300, Michael S. Tsirkin wrote: > On Thu, Apr 07, 2011 at 10:43:25AM -0700, Dave Hansen wrote: > > The virtio balloon driver has a VIRTIO_BALLOON_F_MUST_TELL_HOST > > feature bit. Whenever the bit is set, we must always tell the > > host before we free pages back to the allocator. Without this > > we might free a page (and have another user touch it) while the > > hypervisor is unprepared for it. > > > > But, if the bit is _not_ set, we are under no obligation to > > reverse the order. Furthermore, all modern qemus set this bit. > > Which qemus do this, specifically? Amit Shah just pointed out to me > that upstream qemu.git and qemu-kvm.git don't seem to do this. I had a conversation with Anthony about it, and I think I managed to confuse myself somewhere. Just to be clear, all that I see in the qemu-kvm git tree right now (df85c051d780bca0ee2462cfeb8ef6d9552a19b0) is this: hw/virtio-balloon.h:#define VIRTIO_BALLOON_F_MUST_TELL_HOST 0 /* Tell before reclaiming pages */ > Which qemu did you test this with? Probably a week or two old qemu-kvm. My changelog could probably use some work, but the patch still stands. The only requirement we have is that when VIRTIO_BALLOON_F_MUST_TELL_HOST is set we *MUST* tell the host, first. But, when it's not set, we can do whatever we want. So, we might as well always have the ...F_MUST_TELL_HOST behavior all the time. -- Dave _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization