There’s been some Friday night kernel drama on the Linux kernel mailing list… Linus Torvalds has expressed regrets for merging the Bcachefs file-system and an ensuing back-and-forth between the file-system maintainer.

    • DaPorkchop_@lemmy.ml
      link
      fedilink
      arrow-up
      75
      arrow-down
      1
      ·
      6 个月前

      ext4 is intended for a completely different use case, though? bcachefs is competing with btrfs and ZFS in big storage arrays spanning multiple drives, probably with SSD cache. ext4 is a nice filesystem for client devices, but doesn’t support some things which are kinda fundamental at larger scales like data checksumming, snapshots, or transparent compression.

      • Possibly linux@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        ·
        5 个月前

        What’s cool about bcache is that it can have fully tiered storage. It can move data from a hard drive to a SSD and vis versa. It isn’t a cache like in ZFS as ZFS wipes the cache drive on mount and adding a cache doesn’t increase capacity

        • DaPorkchop_@lemmy.ml
          link
          fedilink
          arrow-up
          35
          ·
          6 个月前

          XFS still isn’t a multi-device filesystem, though… of course you can run it on top of mdraid/LVM, but that still doesn’t come close to the flexibility of what these specialized filesystems can do. Being able to simply run btrfs device add /dev/sdx1 / and immediately having the new space available is far less hassle than adding a device to an md array, then resizing the partition and then resizing the filesystem (and removing a device is even worse). Snapshots are a similar deal - sure, LVM can let you snapshot your entire virtual block device, but your snapshots are block devices themselves which need to be explicitly mounted, while in btrfs/bcachefs a snapshot is just a directory, and can be isolated to a specific subvolume rather than the entire block device.

          Data checksums are also substantially less useful when the filesystem can’t address the underlying devices individually, because it makes repairing the data from a replica impossible. If you have a file on an md RAID1 device and one of the replicas has a bad block, you might be able to detect the bitrot by verifying the checksum, but you can’t actually fix it, because even though there is a second copy of the data on another drive, mdadm simply exposes a simple block device and doesn’t provide any way to read from “the other copy”. mdraid can recover from total drive failure, but not data corruption.

          • pimeys@lemmy.nauk.io
            link
            fedilink
            arrow-up
            8
            ·
            6 个月前

            One of the best filesystem codebases out there. Really a top notch file system if you don’t need to resize it once it’s created. It is a write through, not copy on write, so some features such as snapshots are not possible using XFS. If you don’t care about features found in btrfs, zfs or bcachefs, and you don’t need to resize the partition after creating it, XFS is a solid and very fast choice.

            Ext4 codebase is known to be very complex and some people say even scary. It just works because everybody’s using it and bugs have been fixed years ago.

        • ReversalHatchery@beehaw.org
          link
          fedilink
          English
          arrow-up
          5
          ·
          edit-2
          5 个月前

          Honestly I’m fine with ZFS on larger scale, but on desktop I want a filesystem that can do compression (like NTFS on windows) and snapshots.

          I have actually used compression a lot, and it spared me a lot of space. No, srorage is not cheap, or else I’m awaiting your shipment.
          Other than that I’m doing differential backups on windows, and from time to time it’s very useful that I can grab a file to which something just happened. Snapshots cost much less storage than complete copies, which I couldn’t afford, but this way I have daily diffs for a few years back, and it only costs a TB or so.

      • Fonzie!@ttrpg.network
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        6 个月前

        FAT32 does not just work for my Linux OS.

        To people who just want to browse the web, use Office applications and a few other things, ext4 just works and FAT32 really just doesn’t.

        I get the point you’re trying to make, FAT32 also has a small file size and is missing some features, ext4 is like that to for instance Bcachefs.
        But FAT32 (and exFAT and a few others) have a completely different use cases; I couldn’t use FAT32 for Linux and expect it to work, I also couldn’t use ext4 for my USB stick and expect it to just work as a USB stick.

        • areyouevenreal@lemm.ee
          link
          fedilink
          arrow-up
          2
          ·
          5 个月前

          I also couldn’t use ext4 for my USB stick and expect it to just work as a USB stick.

          Why not? It can be adapted to a smaller drive size fairly easily during filesystem creation.

          • Fonzie!@ttrpg.network
            link
            fedilink
            arrow-up
            1
            arrow-down
            1
            ·
            edit-2
            5 个月前

            True, but for me and many others USBs are also just massively portable. Since macOS, Windows and many others (phones, consoles, smart TVs…) don’t speak ext4 but do all speak FAT32 and exFAT, that makes exFAT the way to go on USB drives.

        • linearchaos@lemmy.world
          link
          fedilink
          English
          arrow-up
          13
          ·
          6 个月前

          Like there’s not a bunch of stuff EXT 4 can’t do that BTRFS and whatever this other acronym soup can do.

          It’s the entire point of my post. E x t 4 does work but it doesn’t do the stuff these other file systems do so they are an advantageous choice for some things.

          • GolfNovemberUniform@lemmy.ml
            link
            fedilink
            arrow-up
            2
            arrow-down
            5
            ·
            edit-2
            6 个月前

            I think we’re just talking about different priorities. For me stability is the most important in production. For you features seem to matter more. For me it’s enough if a file system can store, write, read and not lose files. I guess it depends on what the use case and the budget are.

            • linearchaos@lemmy.world
              link
              fedilink
              English
              arrow-up
              9
              ·
              6 个月前

              Yeah, some people have needs that you don’t have. That’s why I commented on your blanket statement of just use EXT4.

              I have BTRFS in production all over the place. Snapshots are extremely useful for what I do.

            • DaPorkchop_@lemmy.ml
              link
              fedilink
              arrow-up
              7
              arrow-down
              2
              ·
              6 个月前

              ext4 aims to not lose data under the assumption that the single underlying drive is reliable. btrfs/bcachefs/ZFS assume that one/many of the perhaps dozens of underlying drives could fail entirely or start returning garbage at any time, and try to ensure that the bad drive can be kicked out and replaced without losing any data or interrupting the system. They’re both aiming for stability, but stability requirements are much different at scale than a “dumb” filesystem can offer, because once you have enough drives one of them WILL fail and ext4 cannot save you in that situation.

              Complaining that datacenter-grade filesystems are unreliable when using them in your home computer is like removing all but one of the engines from a 747 and then complaining that it’s prone to crashing. Of course it is, because it was designed under the assumption that there would be redundancy.

            • ProtonBadger@lemmy.ca
              link
              fedilink
              arrow-up
              4
              ·
              edit-2
              6 个月前

              Well, yes use-case is key. But interestingly ext4 will never detect bitrot/errors/corruption. BTRFS will detect corrupted files because its targeted users wants to know. It makes it difficult to say what’s the more reliable FS because first we’d have to define “reliable” and the perception of it and who/what do we blame when the FS tells us there’s a corrupted file detected?. Do we shoot the messenger?

      • Quazatron@lemmy.world
        link
        fedilink
        arrow-up
        5
        arrow-down
        16
        ·
        6 个月前

        No. You can layer ext4 with LVM and LUKS to get a lot of features (but not all) that you get with BTRFS or ZFS. FAT is not suitable for anything other than legacy stuff.

        • linearchaos@lemmy.world
          link
          fedilink
          English
          arrow-up
          23
          ·
          6 个月前

          My point is there are features that you don’t get in EXT that are completely reasonable to use and workflows.

          When someone says just use EXT4, they’re just missing the fact that people may want or need those other features.

          Your response to FAT is exactly my point.

    • sfera@beehaw.org
      link
      fedilink
      arrow-up
      18
      ·
      6 个月前

      The article is not about which filesystem to use or not, but about the size and contents of the patches submitted in relation to bcachefs. It seems that the submitted changes which should have been just fixes also contain new functionality. Though it is very nice to see how active and enthusiastic the development of bcachefs is, mixing fixes with new functionality is hard to review and dangerous as it can introduce additional issues. Again, while I appreciate Kents work, I understand Linus’ concerns.

    • ByteJunk@lemmy.world
      link
      fedilink
      arrow-up
      17
      ·
      6 个月前

      Torvalds rejected the merge, and that’s pretty much what he said - no one is using bcachefs.

      There’s no reason for a “fix” to be 1k+ lines, these sorts of changes need to come earlier in the release cycle.