summaryrefslogtreecommitdiff
path: root/open_issues
diff options
context:
space:
mode:
authorgnucode <gnucode@web>2026-06-03 02:47:37 +0200
committerGNU Hurd web pages engine <web-hurd@gnu.org>2026-06-03 02:47:37 +0200
commit7d71eacd88da00584c547e786f290d920155264f (patch)
tree21479a8649546e924cae13c8333461d31852396a /open_issues
parente536fceea999d0832141f27fb1ac6905b5328d45 (diff)
I linked to ext2fs and mentioned CoW filesystems.
Diffstat (limited to 'open_issues')
-rw-r--r--open_issues/bcachefs.mdwn19
1 files changed, 9 insertions, 10 deletions
diff --git a/open_issues/bcachefs.mdwn b/open_issues/bcachefs.mdwn
index 330a41e1..223616e9 100644
--- a/open_issues/bcachefs.mdwn
+++ b/open_issues/bcachefs.mdwn
@@ -11,11 +11,12 @@ License|/fdl]]."]]"""]]
[[!tag open_issue_hurd]]
-The Hurd's primary filesystem is ext2, which works but lacks modern
-features. Ext2 does not have a journal, so Hurd users occasionally
-have to deal with filesystem corruption. `fsck` can fix most of the
-issues (with loss of random data), but without a proper journal the
-Hurd currently is not a good a OS for long-term data storage.
+The Hurd's primary filesystem is [[hurd/translator/ext2fs]], which also supports
+an ext3/ext4 compatible journal. However, the ext2/3/4 filesystems are non-CoW
+filesystems and are somewhat technically dated. ZFS has shown what is possible
+with a CoW filesystem. Perhaps [Bcachefs](https://bcachefs.org/) could be the
+Hurd's modern CoW filesystem, but only a devoted developer could port it to the Hurd.
+There are currently no concrete plans to do so due to lack of developer man power.
Bcachefs is a modern COW (copy-on-write) open source filesystem for
Linux, which intends to replace Btrfs and ZFS while having the
@@ -27,13 +28,11 @@ database transaction layer. That core database library is maybe
Some Hurd developers recently [[talked with
Bcachefs|https://youtube.com/watch?v=bcWsrYvc5Fg]] author Kent
-Overstreat about porting bcachefs to the Hurd. There are currently no
-concrete plans to do so due to lack of developer man power.
-
+Overstreat about porting bcachefs to the Hurd. Kent explained that
90% of the Bcachefs filesystem code builds and runs in userspace. It
uses a shim layer that makes maps kernel locking primatives to
-pthreads, the kernel io API is mapped to AIO, etc. Bcachefs does
-intend to eventually rewrite most or all of its current codebase into
+pthreads, the kernel io API is mapped to AIO, etc. Kent
+intends to eventually rewrite most or all of bcachefs in
rust.
Kent is ok with us merging a shim layer for libstore that maps to the