On 10/31/13 00:26, Jordan Justen wrote:

>> Jordan, could you please explain the problem again?
> 
> This protocol interface doesn't seem to follow the conventions of the
> other io protocols. In addition, the alignment issue seems unresolved
> to me.
> 
> I just don't want any code outside of EDK II to pick this interface
> up, and become dependent on it.
> 
> Changing the width to be enum based, and omitting 64-bit accesses
> seems to resolve my immediate concerns.

I think that changing the width to be enum based would eliminate a
safety feature of the (device specific) VIRTIO_CFG_READ() macros -- we
could no longer check if the size of the pointer target, and the size of
the device-specific field, are equal. The driver writer would have to
specify the field width (the enum) each time. I think that's more
brittle than what we have now.

But I'm willing to yield on this of course :)

> I would also accept adding a disclaimer comment in the protocol file, such as:
> "This protocol is a work in progress, and should not be used outside
> of the EDK II tree."
> Unfortunately, I think it would be all to easy to miss such a disclaimer.

This is positively how I've approached the new protocol. In my eyes it's
nothing to standardize or advertise or whatever. It's only a protocol
because that's how we implement virtual functions (a structure of
function pointers) in UEFI, while remaining compatible with the driver
model (automatic discovery etc). That's all.

The protocol serves our direct needs. We have two implementations, and
three clients. I don't believe in early generalization.

PciIo is an entirely different caliber.

> ... Or, if anyone is feeling really peppy, what about trying to figure
> out if the protocol makes sense at the UEFI spec level?

Umm, thanks but no thanks :)

Objectively: the virtio-spec is being revised (see Rusty's recent email
to the list). I think if any virtio protocol should be standardized for
/ specified in UEFI, then it should happen only after the main OSes have
ported their drivers to the revised virtio spec, and provided their
feedback to the spec working group.

I do think Olivier's virtio protocol is quite close to the 0.9.5 version
of the spec, on the "logical operation" level.

Thanks
Laszlo

------------------------------------------------------------------------------
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to