mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 22:14:04 +02:00
The initial FUSE passthrough interface has the issue of introducing an ioctl which receives as a parameter a data structure containing a pointer. What happens is that, depending on the architecture, the size of this struct might change, and especially for 32-bit userspace running on 64-bit kernel, the size mismatch results into different a single ioctl the behavior of which depends on the data that is passed (e.g., with an enum). This is just a poor ioctl design as mentioned by Arnd Bergmann [1]. Introduce the new FUSE_PASSTHROUGH_OPEN ioctl which only gets the fd of the lower file system, which is a fixed-size __u32, dropping the confusing fuse_passthrough_out data structure. [1] https://lore.kernel.org/lkml/CAK8P3a2K2FzPvqBYL9W=Yut58SFXyetXwU4Fz50G5O3TsS0pPQ@mail.gmail.com/ Bug: 175195837 Signed-off-by: Alessio Balsini <balsini@google.com> Change-Id: I486d71cbe20f3c0c87544fa75da4e2704fe57c7c |
||
|---|---|---|
| .. | ||
| asm-generic | ||
| drm | ||
| linux | ||
| misc | ||
| mtd | ||
| rdma | ||
| scsi | ||
| sound | ||
| video | ||
| xen | ||
| Kbuild | ||