[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio-comment] [PATCH 1/1] ccw: ccw payload description
On Sun, 2 Feb 2014 18:27:26 +0200 "Michael S. Tsirkin" <mst@redhat.com> wrote: > On Fri, Jan 31, 2014 at 03:25:31PM +1030, Rusty Russell wrote: > > "Michael S. Tsirkin" <mst@redhat.com> writes: > > > On Thu, Jan 30, 2014 at 01:10:29PM +0100, Cornelia Huck wrote: > > >> I think what makes this complicated is that we specify datastructures > > >> that are supposed to work for both legacy and non-legacy, when they > > >> are in fact different (at least on be). > > > > > > So how about something like attribute((virtio_endian)) (a bit too long) > > > or ve32 (slightly ugly). > > > > > >> How about adding "A note on legacy interfaces" for each of these cases, > > >> where we specify the data structures with native-endian where > > >> appropriate, and keep the explicit le notation for the standard? We'd > > >> end up with some duplication, but we'd be very clear on what is > > >> expected. > > > > > > In practice, this will make it harder to write transitional > > > drivers. Driver authors will have to reverse-engineer field > > > layouts and note that offsets happen to match. > > > That's not being nice to readers. > > > > > > Take a look at virtio drivers that Rusty wrote: > > > ring layouts *don't* use le tags because sometimes > > > they are used with be. > > > > Sure, but it will always be hard to write such drivers. There shouldn't > > be many people doing that though. And they'll be doing it for backwards > > compatibility, where they'll presumably test... > > > > I'm more concerned about people writing non-legacy drivers and getting > > endianness wrong. But if you feel strongly, we could put a comment > > above each one? > > > > Cheers, > > Rusty. > > Sounds good, let's do that. And let's add a comment > where we define leXX. https://lists.oasis-open.org/archives/virtio/201401/msg00089.html adds definitions for leXX types, among other things.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]