Hacker News new | ask | show | jobs
by tombert 1578 days ago
Maybe someone with more understanding of kernel development could explain things to me.

Does there have to be explicit kernel-level support to support a filesystem? Even if they remove support, does that stop anyone from releasing a kernel module and supporting it?

3 comments

Not really, no. But you'd have to get the source and build the kernel module for the specific kernel it runs on. There are mechanisms to do this, such as DKMS (e.g. Virtualbox does this: it provides its kernel modules' code, OS/user provides kernel source, magic happens and sometimes it even works on the first try); having the module code always present in kernel source (even if it doesn't get built) is more convenient for building, but less convenient for kernel maintainers.
That's what I thought; I run zfs-dkms on my server, and I just assumed that other filesystems could do the same.
Pretty much any kernel module could go this way, yes. The discussion on LKML seems to be focused on "should WE maintain this code?"
Depends if you want to boot from it, IIRC.

Your kernel has to have compiled-in support for the filesystem of the drive you store your kernel modules on.

No, Initramfs solved this. As long as you can provide a list of block to the bootloader, everything works as expected.

Thats how people boot from ZFS

You can implement filesystems as a kernel module, or use a filesystem-in-userspace option.