Rusty Russell wrote:
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.
It's not a unique identifier since it can be used for multiple items
(like it is for virtqueues configs).
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.
But PCI device configuration is not stateful. If you care about letting
the host know what features a guest understands, I think something more
explicit and stateful should be used. For instance, a feature register
that stores a bitmap.
Otherwise, the host has to infer based on what fields that guest has
read what features the guest actually supports. That seems error prone
to me.
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...
What do you think of what I proposed? It seems simpler to me.
Regards,
Anthony Liguori
Cheers,
Rusty.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]