On Sat, Dec 02, 2017 at 08:46:19AM -0600, Benjamin Herrenschmidt wrote: > On Sat, 2017-12-02 at 08:45 -0600, Benjamin Herrenschmidt wrote: > > On Fri, 2017-12-01 at 15:10 +1100, David Gibson wrote: > > > > > > Hm, ok. Guest endian (or at least, not definitively host-endian) data > > > in a plain uint32_t makes me uncomfortable. Could we use char data[4] > > > instead, to make it clear it's a byte-ordered buffer, rather than a > > > number as far as the XIVE is concerned. > > > > > > Hm.. except that doesn't quite work, because the hardware must define > > > which end that generation bit ends up in... > > > > It also needs to be written atomically. Just say it's big endian. > > Also the guest reads it using be32_to_cpup...
Ok. Definitely should be treated as BE and read/written with the be32 DMA helper functions. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature