[CentOS] Native ZFS on Linux

Fri May 29 15:20:00 UTC 2015
Chris Adams <linux at cmadams.net>

Once upon a time, Chuck Munro <chuckm at seafoam.net> said:
> I have a question that has been puzzling me for some time ... what
> is the reason RedHat chose to go with btrfs rather than working with
> the ZFS-on-Linux folks (now OpenZFS)?  Is it a licensing issue,
> political, etc?

Licensing.  Sun chose an Open Source license that is incompatible with
the GPLv2 as used by the Linux kernel, so it is not legally possible to
distribute a combined work of the kernel and the Sun ZFS code (at least
that's the opinion of a number of lawyers, including Red Hat's; not all
agree, but not worth arguing about here).  It is possible to access ZFS
filesystems through the FUSE layer using Sun-derived code (because that
doesn't create a combined work), but that's not really an "enterprise"
filesystem access method.

The only legal way to use ZFS natively under Linux would be to not use
any of the Sun code and reimplement ZFS from scratch for Linux.  That
would be a large job.

BTRFS also is much better integrated with the Linux kernel's way of
doing things.  The Linux ZFS port keeps its own cache separate from the
kernel's page cache, which complicates memory management.  Also, BTRFS
has features that ZFS does not.

I expect BTRFS to get a lot more mature in the near future, as Facebook
is putting resources into moving parts of their infrastructure to BTRFS.

Chris Adams <linux at cmadams.net>