Re: virtio config_ops refactoring

From: Rusty Russell
Date: Tue Nov 06 2007 - 17:57:30 EST


On Wednesday 07 November 2007 04:48:35 Anthony Liguori wrote:
> Semantically, find requires that a field have both a type and a length.
> With the exception of the VIRTQUEUE field used internally by lguest,
> type is always a unique identifier. Since virtqueue information is not
> a required part of the config space, it seems to me that type really
> should be treated as a unique identifier.

Hi Anthony,

Not sure I get this. It is a unique identifier. You need the length
to handle unknown fields.

> find_vq also is curious in that it is stateful in it's enumeration.

Well, they're *all* stateful. This gives a simple method of knowing what
fields the guest understands: it marks the fields as it finds them. Then it
sets the status, which allows the host to know when it's completed
configuration reads.

I like enumerating the virtqueues: it's not necessary but it's clearer.

> This adds seemingly unnecessary complexity.

I'd be happy for a simpler mechanism...

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/