Re: virtio: Add memory statistics reporting to the balloon driver

From: Rusty Russell
Date: Tue Nov 10 2009 - 19:02:22 EST


On Wed, 11 Nov 2009 08:22:42 am Anthony Liguori wrote:
> Rusty Russell wrote:
> > On Tue, 10 Nov 2009 03:02:06 am Adam Litke wrote:
> >
> >> A simpler approach is to collect memory statistics in the virtio
> >> balloon driver and communicate them to the host via the device config space.
> >>
> >
> > There are two issues I see with this. First, there's an atomicity problem
> > since you can't tell when the stats are consistent. Second, polling is
> > ugly.
> >
> > A stats vq might solve this more cleanly?
> >
>
> This turns out to not work so nicely. You really need bidirectional
> communication. You need to request that stats be collected and then you
> need to tell the hypervisor about the stats that were collected. You
> don't need any real correlation between requests and stat reports either.

You register an outbuf at initialization time. The host hands it back when
it wants you to refill it with stats.

> This really models how target/actual work and I think it suggests that
> we want to reuse that mechanism for the stats too.

Sure, I want to. You want to. It's simple.

But the universe is remarkably indifferent to what we want. Is it actually
sufficient or are we going to regret our laziness?

Cheers,
Rusty.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/