OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [virtio] Re: [virtio-comment] [PATCH RFC] virtio-pci: new configuration layout


On Tue, 03 Sep 2013 13:27:58 +0930
Rusty Russell <rusty@au1.ibm.com> wrote:

> Cornelia Huck <cornelia.huck@de.ibm.com> writes:
> > On Mon, 02 Sep 2013 10:56:20 +0930
> > Rusty Russell <rusty@au1.ibm.com> wrote:
> >
> >> Cornelia Huck <cornelia.huck@de.ibm.com> writes:
> >> > Would it make sense to have a bit 33 "rings big endian" whose validity
> >> > depends on bit 32 set? This would make it possible for ccw to keep its
> >> > current endianness.
> >> 
> >> Very awkward.  Our experience with bi-endian devices on PowerPC suggests
> >> it's far better to not negotiate endian.  It also avoids a branch
> >> everywhere in the driver and host.
> >
> > Ok, so let's skip this feature bit and make virtio-ccw big endian for
> > the ring?
> 
> That's one option: it would allow current Linux guests to do a
> compile-time endian switch because we currently assume ARCH=s390 is
> equivalent to "using virtio-ccw only".  QEMU may be able to make the
> same assumption.
> 
> I worry about future virtio-pci on s390, where this issue will become
> more complicated.  "LE everywhere" is a simple rule.

I don't see how virtio-pci could be made to work with the s390 pci
implementation, so I don't think we will see anything but virtio-ccw on
s390 machines.

> 
> We still have the question of the endian of per-device headers
> (eg. virtio-blk header) and per-device config space.  I'm assuming we'll
> use the same endian as for the ring.

Config "space" for virtio-ccw is not accessed through memory writes but
through special channel commands. Whether it is big or little endian is
completely orthogonal to the endianness of the ring etc. - both would
be fine.

Cornelia



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]