mirror_zfs/module/zfs
Massimo Maggi 023699cd62 Posix ACL Support
This change adds support for Posix ACLs by storing them as an xattr
which is common practice for many Linux file systems.  Since the
Posix ACL is stored as an xattr it will not overwrite any existing
ZFS/NFSv4 ACLs which may have been set.  The Posix ACL will also
be non-functional on other platforms although it may be visible
as an xattr if that platform understands SA based xattrs.

By default Posix ACLs are disabled but they may be enabled with
the new 'aclmode=noacl|posixacl' property.  Set the property to
'posixacl' to enable them.  If ZFS/NFSv4 ACL support is ever added
an appropriate acltype will be added.

This change passes the POSIX Test Suite cleanly with the exception
of xacl/00.t test 45 which is incorrect for Linux (Ext4 fails too).

  http://www.tuxera.com/community/posix-test-suite/

Signed-off-by: Massimo Maggi <me@massimo-maggi.eu>
Signed-off-by: Richard Yao <ryao@gentoo.org>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #170
2013-10-29 14:54:26 -07:00
..
arc.c Add visibility in to cached dbufs 2013-10-25 13:59:40 -07:00
bplist.c Illumos #3464 2013-09-04 16:01:24 -07:00
bpobj.c Illumos #3464 2013-09-04 16:01:24 -07:00
bptree.c Illumos #3498 panic in arc_read() 2013-07-02 13:34:31 -07:00
dbuf_stats.c Add visibility in to cached dbufs 2013-10-25 13:59:40 -07:00
dbuf.c Add visibility in to cached dbufs 2013-10-25 13:59:40 -07:00
ddt_zap.c Add ddt_object_count() error handling 2012-10-29 08:57:45 -07:00
ddt.c Fix incorrect assertions in ddt_phys_decref and ddt_sync_entry 2013-05-06 14:10:55 -07:00
dmu_diff.c Illumos #3464 2013-09-04 16:01:24 -07:00
dmu_object.c Add linux kernel module support 2010-08-31 13:41:58 -07:00
dmu_objset.c Fix dmu_objset_find_dp() KM_SLEEP warning 2013-09-11 11:49:32 -07:00
dmu_send.c Illumos #3464 2013-09-04 16:01:24 -07:00
dmu_traverse.c Add visibility in to arc_read 2013-10-25 13:57:25 -07:00
dmu_tx.c Add visibility in to dmu_tx_assign times 2013-10-25 13:57:25 -07:00
dmu_zfetch.c Switch KM_SLEEP to KM_PUSHPAGE 2012-08-27 12:01:37 -07:00
dmu.c Add visibility in to cached dbufs 2013-10-25 13:59:40 -07:00
dnode_sync.c Illumos #3464 2013-09-04 16:01:24 -07:00
dnode.c Illumos #3464 2013-09-04 16:01:24 -07:00
dsl_dataset.c Illumos #3464 2013-09-04 16:01:24 -07:00
dsl_deadlist.c Illumos #3104: eliminate empty bpobjs 2013-01-08 10:35:43 -08:00
dsl_deleg.c Illumos #3464 2013-09-04 16:01:24 -07:00
dsl_destroy.c Reduce the stack usage of dsl_dataset_remove_clones_key 2013-09-25 15:18:32 -07:00
dsl_dir.c Illumos #3464 2013-09-04 16:01:24 -07:00
dsl_pool.c Revert "Add txgs-<pool> kstat file" 2013-10-25 13:57:25 -07:00
dsl_prop.c Export addition dsl_prop_* symbols 2013-09-25 15:44:22 -07:00
dsl_scan.c Illumos #3464 2013-09-04 16:01:24 -07:00
dsl_synctask.c Illumos #3464 2013-09-04 16:01:24 -07:00
dsl_userhold.c Fix several new KM_SLEEP warnings 2013-09-25 15:44:22 -07:00
fm.c Condition variable usage, zevent_cv 2012-10-15 16:01:54 -07:00
gzip.c Fix zmod.h usage in userspace 2010-08-31 08:38:46 -07:00
lz4.c Linux 3.11 compat: Rename LZ4 symbols 2013-10-22 10:12:39 -07:00
lzjb.c Switch KM_SLEEP to KM_PUSHPAGE 2012-08-27 12:01:37 -07:00
Makefile.in Add visibility in to cached dbufs 2013-10-25 13:59:40 -07:00
metaslab.c Illumos #3552 2013-10-18 14:34:01 -07:00
refcount.c Illumos #3464 2013-09-04 16:01:24 -07:00
rrwlock.c Fix several new KM_SLEEP warnings 2013-09-25 15:44:22 -07:00
sa.c Illumos #3464 2013-09-04 16:01:24 -07:00
sha256.c Add linux sha2 support 2010-08-31 13:41:59 -07:00
spa_boot.c Add linux kernel module support 2010-08-31 13:41:58 -07:00
spa_config.c Illumos #3639 zpool.cache should skip over readonly pools 2013-08-07 16:13:56 -07:00
spa_errlog.c Add linux kernel module support 2010-08-31 13:41:58 -07:00
spa_history.c Fix memory leak false positive in log_internal() 2013-10-09 09:16:36 -07:00
spa_misc.c Add visibility in to arc_read 2013-10-25 13:57:25 -07:00
spa_stats.c Add visibility in to dmu_tx_assign times 2013-10-25 13:57:25 -07:00
spa.c Fix spa_deadman() TQ_SLEEP warning 2013-09-25 15:38:44 -07:00
space_map.c Illumos #3464 2013-09-04 16:01:24 -07:00
txg.c Add visibility in to txg sync behavior 2013-10-25 13:57:25 -07:00
uberblock.c Update core ZFS code from build 121 to build 141. 2010-05-28 13:45:14 -07:00
unique.c Switch KM_SLEEP to KM_PUSHPAGE 2012-08-27 12:01:37 -07:00
vdev_cache.c Switch KM_SLEEP to KM_PUSHPAGE 2012-08-27 12:01:37 -07:00
vdev_disk.c Use GFP_NOIO in vdev_disk_io_flush() 2013-07-10 14:12:21 -07:00
vdev_file.c Illumos #3581 spa_zio_taskq[ZIO_TYPE_FREE][ZIO_TASKQ_ISSUE]->tq_lock contention 2013-05-06 14:05:37 -07:00
vdev_label.c Illumos #3090 and #3102 2013-01-08 10:35:42 -08:00
vdev_mirror.c Removing unneeded mutex for reading vq_pending_tree size 2013-09-25 15:29:45 -07:00
vdev_missing.c Illumos #1948: zpool list should show more detailed pool info 2012-09-19 13:39:05 -07:00
vdev_queue.c Illumos #3618 ::zio dcmd does not show timestamp data 2013-08-12 16:46:50 -07:00
vdev_raidz.c Illumos #3006 2013-06-19 15:14:10 -07:00
vdev_root.c Illumos #1948: zpool list should show more detailed pool info 2012-09-19 13:39:05 -07:00
vdev.c Illumos #3618 ::zio dcmd does not show timestamp data 2013-08-12 16:46:50 -07:00
zap_leaf.c Switch KM_SLEEP to KM_PUSHPAGE 2012-09-05 08:44:58 -07:00
zap_micro.c Illumos #3006 2013-06-19 15:14:10 -07:00
zap.c Illumos #3006 2013-06-19 15:14:10 -07:00
zfeature_common.c Illumos #3035 LZ4 compression support in ZFS and GRUB 2013-01-29 09:28:20 -08:00
zfeature.c Illumos #3104: eliminate empty bpobjs 2013-01-08 10:35:43 -08:00
zfs_acl.c Posix ACL Support 2013-10-29 14:54:26 -07:00
zfs_byteswap.c Add linux kernel module support 2010-08-31 13:41:58 -07:00
zfs_ctldir.c Illumos #3464 2013-09-04 16:01:24 -07:00
zfs_debug.c Illumos #3006 2013-06-19 15:14:10 -07:00
zfs_dir.c Trivial spelling fix 2013-04-19 15:43:16 -07:00
zfs_fm.c 3246 ZFS I/O deadman thread 2013-05-01 17:05:52 -07:00
zfs_fuid.c Drop HAVE_XVATTR macros 2011-03-02 11:44:34 -08:00
zfs_ioctl.c Allocate the ioctl "output" nvlist with KM_PUSHPAGE. 2013-09-25 15:44:22 -07:00
zfs_log.c Revert "Remove TSD zfs_fsyncer_key" 2012-12-20 09:56:28 -08:00
zfs_onexit.c Fix several new KM_SLEEP warnings 2013-09-25 15:44:22 -07:00
zfs_replay.c Constify structures containing function pointers 2013-03-04 08:49:32 -08:00
zfs_rlock.c Illumos #3006 2013-06-19 15:14:10 -07:00
zfs_sa.c Revert "Use SA_HDL_PRIVATE for SA xattrs" 2012-08-25 09:25:56 -07:00
zfs_vfsops.c Posix ACL Support 2013-10-29 14:54:26 -07:00
zfs_vnops.c Posix ACL Support 2013-10-29 14:54:26 -07:00
zfs_znode.c Fix uninitialized variables 2013-09-13 13:31:24 -07:00
zil.c Illumos #3464 2013-09-04 16:01:24 -07:00
zio_checksum.c Update core ZFS code from build 121 to build 141. 2010-05-28 13:45:14 -07:00
zio_compress.c Linux 3.11 compat: Rename LZ4 symbols 2013-10-22 10:12:39 -07:00
zio_inject.c 3246 ZFS I/O deadman thread 2013-05-01 17:05:52 -07:00
zio.c Illumos #3464 2013-09-04 16:01:24 -07:00
zle.c Update core ZFS code from build 121 to build 141. 2010-05-28 13:45:14 -07:00
zpl_ctldir.c Add missing dsl pool configuration lock 2013-10-22 08:31:20 -07:00
zpl_export.c Implement .commit_metadata hook for NFS export 2012-10-03 10:49:45 -07:00
zpl_file.c Linux 3.11 compat: fops->iterate() 2013-08-15 16:19:07 -07:00
zpl_inode.c Posix ACL Support 2013-10-29 14:54:26 -07:00
zpl_super.c Posix ACL Support 2013-10-29 14:54:26 -07:00
zpl_xattr.c Posix ACL Support 2013-10-29 14:54:26 -07:00
zrlock.c Export ZFS symbols needed by Lustre. 2010-09-17 16:24:15 -07:00
zvol.c Illumos #3464 2013-09-04 16:01:24 -07:00