Re: [RFC PATCH 3/4] virtio_balloon: add pressure notification via a new virtqueue

From: Rusty Russell
Date: Sun Jan 19 2014 - 21:56:24 EST

Luiz Capitulino <lcapitulino@xxxxxxxxxx> writes:
> On Fri, 17 Jan 2014 09:10:47 +1030
> Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
>> Luiz Capitulino <lcapitulino@xxxxxxxxxx> writes:
>> > From: Luiz capitulino <lcapitulino@xxxxxxxxxx>
>> >
>> > This commit adds support to a new virtqueue called message virtqueue.
>> OK, this needs a lot of thought (especially since reworking the virtio
>> balloon is on the TODO list for the OASIS virtio technical committee...)
>> But AFAICT this is a way of explicitly saying "no" to the host's target
>> (vs the implicit method of just not meeting the target). I'm not sure
>> that gives enough information to the host. On the other hand, I'm not
>> sure what information we *can* give.
>> Should we instead be counter-proposing a target?
> The problem is how to estimate a target value. I found it simpler
> to just try to obey what the host is asking for (and fail if not
> possible) than trying to make the guest negotiate with the host.

Understood, but we already do this the other way where the host tells
the guest how much memory to give up.

And is a guest expected to automatically inflate the balloon even if the
host doesn't want the memory, or wait to be asked?

> >> What does qemu do with this information?
> >
> > There are two possible scenarios:
> >
> > 1. The balloon driver is currently inflating when it gets under
> > pressure
> >
> > QEMU resets "num_pages" to the current balloon size. This
> > cancels the on-going inflate
> >
> > 2. The balloon driver is not inflating, eg. it's possibly sleeping
> >
> > QEMU issues a deflate
> >
> > But note that those scenarios are not supposed to be used with the
> > current device, they are part of the automatic ballooning feature.
> > I CC'ed you on the QEMU patch, you can find it here case you didn't
> > see it:
> >
> >

Yes, caught that after I replied; I should have checked first.

It seems like we are still figuring out how to do ballooning. The
best approach in cases like this is to make it simple, so I don't hate

But note that Daniel Kiper and I have been discussing a new virtio
balloon for draft 2 of the standard. I'll CC you when I post that to
one of the OASIS virtio mailing lists.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at