Announcement

Collapse
No announcement yet.

FUSE Passthrough Support May Land For Linux 6.9 To Help Boost I/O Performance

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • FUSE Passthrough Support May Land For Linux 6.9 To Help Boost I/O Performance

    Phoronix: FUSE Passthrough Support May Land For Linux 6.9 To Help Boost I/O Performance

    Being worked on and off for several years has been FUSE read/write passthrough support for improving the performance of File-Systems in User-Space by avoiding the daemon overhead on a per-file basis where read/write operations are forwarded by the kernel directly to the lower file-system rather than the FUSE daemon. FUSE passthrough mode has shown to be a big performance win and it looks like it could be finally mainlined come Linux 6.9...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    I think I remember the FUSE devs not being keen to the idea a while back. I am glad it is finally being done and merged.

    Comment


    • #3
      For file systems and projects, including distributed ones, which provides FUSE mountings, this is a considerable win. Thanks to all developers involved!
      Last edited by paulocoghi; 28 February 2024, 10:50 AM.

      Comment


      • #4
        Is the new NTFS driver using FUSE or only the old one?
        Is FUSE used also in other common use cases?

        Comment


        • #5
          I'm guessing overlayfs-fuse is the primary use case, given it's used for rootless containers.

          Comment


          • #6
            Originally posted by Danny3 View Post
            Is the new NTFS driver using FUSE or only the old one?
            Is FUSE used also in other common use cases?
            The new NTFS driver is in the kernel, this patch wouldn't help the NTFS fuse driver though because it's only for when the backing storage is handled by a native Linux fs driver.

            Comment


            • #7
              Nice.

              Comment


              • #8
                Originally posted by Britoid View Post
                I'm guessing overlayfs-fuse is the primary use case, given it's used for rootless containers.
                overlayfs-fuse is kinda dead AFAIK and was intended to be a short lived solution. This particularly implementation is different from others but any passthrough/overlay/union filesystem can leverage this. Google was interested for Android. I'm interested for my union fs.

                There are downsides to using this however. In my own project (mergerfs) I can add resiliency by catching certain errors. As far as I know when using this passthrough there won't be that opportunity any longer. If a read fails on a remote filesystem or write results in ENOSPC there is no mechanism to push that info to the FUSE server and do something about it. I think many users will be fine with that feature tradeoff though.

                Comment


                • #9
                  Originally posted by guspitts View Post
                  I think I remember the FUSE devs not being keen to the idea a while back. I am glad it is finally being done and merged.
                  It was mostly that each implementation had issues and previous attempts were experiments or the people working on them for a company left the firm or moved to work on something different so they didn't get fully fleshed out.
                  Last edited by trapexit; 28 February 2024, 01:24 PM.

                  Comment


                  • #10
                    Originally posted by paulocoghi View Post
                    For file systems and projects, including distributed ones, which provides FUSE mountings, this is a considerable win. Thanks to all developers involved!
                    As it is now it isn't clear that this would be useful to distributed platforms. This is primarily / exclusively useful for literally passing an existing file descriptor to the kernel which then works on that going forward rather than forwarding through the fuse server. Giving the kernel a fd from a socket or non-filesystem fd is likely not to work well / at all.

                    Comment

                    Working...
                    X