Re: [PATCH v4 15/16] virtio-fs: add virtiofs filesystem

From: Stefan Hajnoczi
Date: Wed Sep 04 2019 - 14:16:44 EST


On Tue, Sep 03, 2019 at 09:55:49AM -0400, Michael S. Tsirkin wrote:
> On Tue, Sep 03, 2019 at 01:42:02PM +0200, Miklos Szeredi wrote:
> Endian-ness for fuse header also looks wrong.
[...]
> > +struct virtio_fs_forget {
> > + struct fuse_in_header ih;
> > + struct fuse_forget_in arg;
>
> These structures are all native endian.
>
> Passing them to host will make cross-endian setups painful to support,
> and hardware implementations impossible.
>
> How about converting everything to LE?

The driver dictates the endianness of the FUSE protocol session. The
virtio-fs device specification states that the device looks at the first
request's fuse_in_header::opcode field to detect the guest endianness.

If it sees FUSE_INIT in its native endianness then no byte-swapping is
necessary. If it sees FUSE_INIT in the opposite endianness then
byte-swapping is necessary on the device side.

Attachment: signature.asc
Description: PGP signature