[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJfpegvhvS2KEP3kFsSGXONVuBdSdpgy8OGqd79ehN0uGAy5VA@mail.gmail.com>
Date: Wed, 24 Apr 2019 12:52:46 +0200
From: Miklos Szeredi <miklos@...redi.hu>
To: Ian Abbott <abbotti@....co.uk>
Cc: linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] fuse: Add ioctl flag for compat ioctl with 64-bit time_t
On Tue, Apr 23, 2019 at 5:14 PM Ian Abbott <abbotti@....co.uk> wrote:
>
> On 23/04/2019 13:55, Miklos Szeredi wrote:
> > On Fri, Mar 1, 2019 at 6:08 PM Ian Abbott <abbotti@....co.uk> wrote:
> >>
> >> Currently, a CUSE server running on a 64-bit kernel can tell when an
> >> ioctl request comes from a process running a 32-bit ABI, but cannot tell
> >> whether the requesting process is using legacy IA32 emulation or x32
> >> ABI, for example. In particular, the server does not know the size of
> >> the client process's `time_t` type.
> >>
> >> For 64-bit kernels, the `FUSE_IOCTL_COMPAT` and `FUSE_IOCTL_32BIT` flags
> >> are currently set in the ioctl input request (`struct fuse_ioctl_in`
> >> member `flags`) for a 32-bit requesting process. This patch defines a
> >> new flag `FUSE_IOCTL_COMPAT_64TIME` and sets it if the 32-bit requesting
> >> process (running on a 64-bit kernel) uses a 64-bit `time_t` type.
> >
> > Hi,
> >
> > Thanks for the patch.
> >
> > I think it should rather use in_x32_syscall() helper and follow that
> > naming because there's apparently at least one example in xfs of a
> > non-time_t related ioctl that varies between the x32 vs ia32.
>
> Hi Miklos,
>
> It is conceivable that COMPAT_USE_64BIT_TIME could be true for some
> other arch/ABI (although currently it is only ever set for x86/x32).
> Should it have separate flags for "compat 64-bit time" and "compat x32"
> (even though that is currently redundant)?
No, it should just be a single flag, something like
FUSE_IOCTL_COMPAT_X32 and the documentation should say that it implies
64bit time values.
Thanks,
Miklos
Powered by blists - more mailing lists