Re: [PATCH/RFC 7/9] Virtual network guest device driver

Rusty Russell
2007-05-17T04:24:40Z

On Wed, 2007-05-16 at 14:10 -0500, Anthony Liguori wrote:
> For the host, you can probably stay entirely within QEMU. Interguest
> communication would be a bit tricky but guest->host communication is
> real simple.

guest->host is always simple. But it'd be great if it didn't matter to
the guest whether it's talking to the host or another guest.

I think shared memory is an obvious start, but it's not enough for
inter-guest where they can't freely access each other's memory. So you
really want a ring-buffer of descriptors with a hypervisor-assist to say
"read/write this into the memory referred to by that descriptor".

I think this can be done as a simple variation of the current schemes in
existence.

But I'm shutting up until I have some demonstration code 8)

> A tricky bit of this is how to do discovery. If you want to support
> interguest communication, it's not really sufficient to just use strings
> since they identifiers would have to be unique throughout the entire
> system. Maybe you just leave it as a guest=>host channel and be done
> with it.

Hmm, I was going to leave that unspecified. One thing at a time...

Rusty.