Hello, I just want to make sure we don't miss the following point: For IOCTL commands, the device MUST be aware of the actual architecture of the driver/kernel because the device is required to interpret some of the incoming data. Best Regards, -- Idan -----Original Message----- From: Lege Wang <lege.wang@xxxxxxxxxxxxxxx> Sent: Tuesday, 4 June 2024 6:09 To: Stefan Hajnoczi <stefanha@xxxxxxxxxx>; Miklos Szeredi <miklos@xxxxxxxxxx> Cc: Peter-Jan Gootzen <pgootzen@xxxxxxxxxx>; Idan Zach <izach@xxxxxxxxxx>; Yoray Zack <yorayz@xxxxxxxxxx>; virtualization@xxxxxxxxxxxxxxx; Parav Pandit <parav@xxxxxxxxxx>; linux-fsdevel@xxxxxxxxxxxxxxx; Bin Yang <bin.yang@xxxxxxxxxxxxxxx>; Max Gurtovoy <mgurtovoy@xxxxxxxxxx>; mszeredi@xxxxxxxxxx; Eliav Bar-Ilan <eliavb@xxxxxxxxxx>; mst@xxxxxxxxxx; Oren Duer <oren@xxxxxxxxxx>; Angus Chen <angus.chen@xxxxxxxxxxxxxxx> Subject: RE: Addressing architectural differences between FUSE driver and fs - Re: virtio-fs tests between host(x86) and dpu(arm64) External email: Use caution opening links or attachments Hello, > > On Mon, Jun 03, 2024 at 11:06:19AM +0200, Miklos Szeredi wrote: > > On Mon, 3 Jun 2024 at 10:53, Peter-Jan Gootzen <pgootzen@xxxxxxxxxx> > wrote: > > > > > We also considered this idea, it would kind of be like locking > > > FUSE into being x86. However I think this is not backwards > > > compatible. Currently an ARM64 client and ARM64 server work just > > > fine. But making such a change would break if the client has the > > > new driver version and the server is not updated to know that it should interpret x86 specifically. > > > > This would need to be negotiated, of course. > > > > But it's certainly simpler to just indicate the client arch in the > > INIT request. Let's go with that for now. > > In the long term it would be cleanest to choose a single canonical > format instead of requiring drivers and devices to implement many > arch-specific formats. I liked the single canonical format idea you > suggested. Agree, I also think we should use canonical format for cases that client and server have different arches. Regards, Xiaoguang Wang > > My only concern is whether there are more commands/fields in FUSE that > operate in an arch-specific way (e.g. ioctl)? If there really are > parts that need to be arch-specific, then it might be necessary to > negotiate an architecture after all. > > Stefan > > > > > Thanks, > > Miklos > >