ZFS vs EXT

Leventhal…

1 Like

APFS is a remarkable achievement. It lacks some of the sophistication and serious enterprise features from ZFS, and most notably also lacks transparent compression for some reason, but they built a feature-rich modern FS from scratch in 4 years then shipped it in production and even converted their users from the old FS with no problems whatsoever. I mean, that’s amazing.

3 Likes

Yeah, you are right, especially with the pretty seamless live update in place… And iirc it does checksumming of the metadata too.

Having to install 3-4 services, and maintain them, seems like a hassle, when you can just “live with” “the bloat”, and enjoy a next gen filesystem, with some of the best features available for storage.
Not to mention compared to todays hardware standards, the bloat really is minute, unless you’re running a 100’s of TB pool.

The worst things about ZFS would be in my oppinion the licensing, which is horrible(e.g. the user can install install it but you cannot distribute it, e.g. dumb), and the kernel version crap.

For historical context the CDDL was used for water-tightness against oracle, a company known for suing the pants off of everyone around them.

also AFAIK you’re completely free to redistribute it, just credit the license holders. The reason it hasn’t been merged upstream is that the license is gnu incompatible, which really just comes down to FSF pedantry. iirc ubuntu just does it anyway

1 Like

Not so much the FSF, although RMS made his thoughts on the incompatibility clear. It’s the Free Software Conservancy who are the most likely to take action if they believe it’s needed - they work with the FSF and OSI so whilst they probably are pedantic, we’d probably all view them as the good guys.

Since I’ve not seen much written about the licence issue since 2016 I assume they are just keeping an eye on it and figure there are bigger things to worry about? I know they have been in a long running fight with VMware - which has only recently ended.

Has anyone, or does anyone recommend using FreeNAS (ZFS) over Linux (BRTFS/EXT) to provide a NFS server for persistent volumes for a Kubernetes cluster?

The way the OpenZFS license is structured to safeguard against oracle action. Not ideal but it’s what keeps them from suing. Same situation as illumos and other oracle derived projects and Sun-era orphans. I legitimately don’t think the intent was to make it incompatible with the GPL

Canonical isn’t right on much but I genuinely think their interpretation of compatibility has standing, but if it doesn’t make it to court there’s no reason to argue about it.

Oracle holds the copyright on much of OpenZFS.

The issue with the CDDL is that it’s similar to the GPL. The CDDL is more permissive than the GPL, but one thing they have in common is that both licenses state that you may not ship the code under a different license. Unfortunately, the GPL also says that any code that ships with GPL code also has to be shipped under the GPL. So they’re incompatible because the GPL is hypocritical, basically.

I’m aware of the semantics

I was just explaining the history of the situation

Also, since meaninfully changing of the license terms requires consent from every single contributor (indirectly) and initial developer under the CDDL, oracle definitely doesn’t have “majority” ownership of the project.

this is why openzfs and zfs are 2 different codebases. (and afaik one stopped being maintained outside of commercial solaris

The bulk of that explanation was for the benefit of the people who don’t know :slight_smile:

Grepping for Oracle in the code base shows you how much of it has an Oracle copyright:

AUTHORS:    Mark Shellenbaum <[email protected]>
include/libzfs.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/libnvpair.h: * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
include/libzfs_impl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/libuutil.h: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
include/zfs_deleg.h: * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
include/libzutil.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/zfs_comutil.h: * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
man/man1/ztest.1:.\" Copyright (c) 2009 Oracle and/or its affiliates. All rights reserved.
cmd/zpool/zpool_util.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zpool/linux_zpool_vdev.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zpool/freebsd_zpool_vdev.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zpool/zpool_main.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/mount_zfs/mount_zfs.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/ztest/ztest.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zinject/zinject.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zinject/zinject.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zinject/translate.c: * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zfs/zfs_iter.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zfs/zfs_util.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zdb/zdb.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zfs_stat.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/refcount.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/nvpair.h: * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dmu.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zfs_debug.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zfs/zfs_main.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zfs_onexit.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/efi_partition.h: * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dmu_recv.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/arc.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zio.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dmu_objset.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/xvattr.h: * Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/pathname.h: * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/bplist.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/sa_impl.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_destroy.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/bpobj.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_prop.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zil.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/spa.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zrlock.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dmu_send.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_synctask.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_userhold.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libefi/rdwr_efi.c: * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zio_checksum.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/vdev_impl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_scan.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zfs_context.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dbuf.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_dir.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zfs_znode.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zap_impl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zfs_ioctl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libnvpair/libnvpair.c: * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libuutil/uu_string.c: * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libuutil/uu_misc.c: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libuutil/uu_alloc.c: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dnode.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libshare/libshare_impl.h: * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/metaslab.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libshare/nfs.h: * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libshare/libshare.c: * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libshare/smb.c: * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libshare/nfs.c: * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_deadlist.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzutil/zutil_pool.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zfs_acl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/vdev.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzutil/zutil_nicenum.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzutil/freebsd_zutil_import.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzutil/zutil_device_path.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/ddt.h: * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zap_leaf.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzutil/zutil_import.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/spa_impl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_deleg.h: * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zil_impl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dmu_traverse.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/arc_impl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_pool.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/dsl_dataset.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/zvol.h: * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/uberblock_impl.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/freebsd_libzfs_ioctl_compat.c: * Portions Copyright 2005, 2010, Oracle and/or its affiliates.
include/sys/zap.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_import.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_util.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/freebsd_libzfs_mount.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_pool.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_dataset.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_iter.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_status.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_diff.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_sendrecv.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzfs/libzfs_mount.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/sa.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_dir.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/nvpair/nvpair.c: * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/lzjb.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu_send.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zfs_ioctl.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu_tx.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/txg.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu_traverse.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zfs_fuid.c: * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_prop.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_pool.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/bplist.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_deadlist.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/zcommon/zpool_prop.c: * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zio.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/ddt_zap.c: * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
module/zcommon/zfs_comutil.c: * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
module/zcommon/zfs_deleg.c: * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
module/zcommon/zfs_prop.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/sa.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zrlock.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/arc.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/refcount.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dnode_sync.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu_recv.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu_object.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_destroy.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zio_inject.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zil.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_deleg.c: * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dnode.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_userhold.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/spa_config.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/spa_history.c: * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zio_checksum.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/spa_errlog.c: * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/fm.c: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/vdev.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zap_leaf.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/bpobj.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_synctask.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zfs_sa.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/spa.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/spa_misc.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zfs_onexit.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zap.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu_diff.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/vdev_raidz.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/vdev_removal.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_dataset.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dmu_objset.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/zap_micro.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dbuf.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzpool/util.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/dsl_scan.c: * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libzpool/kernel.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/uberblock.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/metaslab.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/vdev_label.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/zfs/ddt.c: * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zed/agents/fmd_api.c: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zed/agents/fmd_api.h: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zed/agents/zfs_diagnosis.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zed/agents/zfs_mod.c: * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/crypto/common.h: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/sysevent/eventdefs.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/fm/util.h: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/fm/protocol.h: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
include/sys/fs/zfs.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
cmd/zed/agents/zfs_retire.c: * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
module/lua/setjmp/setjmp_i386.S: * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved.
module/lua/setjmp/setjmp_x86_64.S: * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/io/aes.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
lib/libspl/include/sys/stat.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
tests/zfs-tests/cmd/randwritecomp/randwritecomp.c: * of a production Oracle database.
module/os/freebsd/zfs/zvol.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_debug.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_acl.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_log.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_dir.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/vdev_file.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/spl/acl_common.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_znode.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_vfsops.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/freebsd_spa.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_ctldir.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/algs/aes/aes_impl.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_replay.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/freebsd/zfs/zfs_vnops.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/algs/aes/aes_impl_aesni.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/algs/aes/aes_impl_x86-64.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/algs/aes/aes_impl_generic.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/algs/modes/gcm.c: * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/algs/modes/gcm_pclmulqdq.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/algs/modes/gcm_generic.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/policy.c: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_debug.c: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_acl.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_vnops.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_replay.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_log.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_dir.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/vdev_file.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_znode.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_ctldir.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/os/linux/zfs/zfs_vfsops.c: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
module/icp/include/modes/gcm_impl.h: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/zfs/sys/zfs_znode.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/zfs/sys/zfs_vfsops.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/zfs/sys/zfs_ctldir.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/acl/acl_common.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/linux/zfs/sys/policy.h: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/vnode_impl.h: * Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/linux/zfs/sys/zfs_ctldir.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/linux/zfs/sys/zfs_vfsops.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/linux/zfs/sys/zfs_vnops.h: * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/sysevent.h: * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/cpupart.h: * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/nvpair.h: * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/fm/protocol.h: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/fm/util.h: * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/sysevent/eventdefs.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/crypto/common.h: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/crypto/api.h: * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
include/os/freebsd/spl/sys/fs/zfs.h: * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
1 Like

The code written by Sun employees was under Sun copyright, and Oracle bought Sun, which makes it theirs.
Not exclusively of course, OpenZFS has a lot of other contributors who also hold copyright.

I’m aware, but Since changes/claims are all or nothing under the cddl (if oracle forks a closed version, any contributor, maintainer or past modifier can fork, and past modifiers can make equal or conflicting claim)

they defacto have zero control over any version of it modified from the 2010 codebase. An unenforceable copyright isn’t a copyright

I don’t know what you’re talking about anymore. Oracle doesn’t have exclusive copyright on OpenZFS, but they don’t have no copyright either. They share the copyright, just as all the contributors to Linux share the copyright.

right. which means it’s totally irrelevant from a practical standpoint

It’s as irrelevant as anyone else who holds that much of the copyright…

My point is that this makes no sense:

The OpenZFS license is the same CDDL that ZFS has always had, and the fact that Oracle holds copyright on some of the code is exactly what gives them any legal grounds to object to the use of their copyrighted code in violation of the license.

I’m not saying I think Oracle will do that, because I’m pretty sure there’s not much to be gained by putting Ubuntu out of business, from an Oracle perspective.

Think we’re off in the weeds here. If there’s a consensus that oracle can’t practically take action for people using ZFS then we’re in agreement on what we were discussing,

Of course they could take action, they have copyright on code, it doesn’t matter how little. If they believe their copyrighted code is being used in violation of the terms of the license, they have reasonable grounds for action.

as it stands no one is violating the license terms and they can’t change the license terms without releasing a new version of the code that no one uses.

The license has a provision for distributing binaries (not source) under modified terms

which means they can’t currently take action on their copyright claim

They have no reason to, at least. It’s the Linux guys I worry about :stuck_out_tongue: