mirror_zfs/module/os/freebsd/zfs
Ryan Moeller 7100db9793 FreeBSD: Implement xattr=sa
FreeBSD historically has not cared about the xattr property; it was
always treated as xattr=on.  With xattr=on, xattrs are stored as files
in a hidden xattr directory.  With xattr=sa, xattrs are stored as
system attributes and get cached in nvlists during xattr operations.
This makes SA xattrs simpler and more efficient to manipulate.  FreeBSD
needs to implement the SA xattr operations for feature parity with
Linux and to ensure that SA xattrs are accessible when migrated or
replicated from Linux.

Following the example set by Linux, refactor our existing extattr vnops
to split off the parts handling dir style xattrs, and add the
corresponding SA handling parts.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: Ryan Moeller <ryan@iXsystems.com>
Closes #11997
2021-12-13 12:22:11 -08:00
..
abd_os.c Include scatter_chunk_waste in arc_size 2020-08-17 20:04:04 -07:00
arc_os.c FreeBSD: avoid memory allocation in arc_prune_async 2021-12-07 11:18:28 -08:00
crypto_os.c Extending FreeBSD UIO Struct 2021-11-12 16:31:55 -08:00
dmu_os.c Fix assert in FreeBSD-specific dmu_read_pages 2021-03-05 12:58:08 -08:00
hkdf.c Add FreeBSD support to OpenZFS 2020-04-14 11:36:28 -07:00
kmod_core.c Avoid taking global lock to destroy zfsdev state 2021-06-23 13:22:14 -07:00
spa_os.c FreeBSD: Add option to rewind checkpoint while importing root pool 2020-08-19 17:19:42 -07:00
sysctl_os.c Share zfs_fsync, zfs_read, zfs_write, et al between Linux and FreeBSD 2020-12-23 14:34:59 -08:00
vdev_file.c vdev_ashift should only be set once 2020-09-18 12:40:20 -07:00
vdev_geom.c Update checkstyle workflow env to ubuntu-20.04 2021-11-12 16:31:55 -08:00
vdev_label_os.c Add support for boot environment data to be stored in the label 2020-05-07 09:36:33 -07:00
zfs_acl.c Use fallthrough macro 2021-11-12 15:24:36 -08:00
zfs_ctldir.c Extending FreeBSD UIO Struct 2021-11-12 16:31:55 -08:00
zfs_debug.c Convert Linux-isms to FreeBSD-isms in platform zfs_debug.c 2020-07-31 21:25:35 -07:00
zfs_dir.c FreeBSD: rework asserts in zfs_dd_lookup 2021-06-23 13:22:14 -07:00
zfs_file_os.c Extending FreeBSD UIO Struct 2021-11-12 16:31:55 -08:00
zfs_ioctl_compat.c FreeBSD: Fix legacy compat for platform IOCs 2020-10-01 12:23:00 -07:00
zfs_ioctl_os.c Make zc_nvlist_src_size limit tunable 2020-08-18 09:33:55 -07:00
zfs_racct.c Restore FreeBSD resource usage accounting 2021-03-05 12:50:32 -08:00
zfs_vfsops.c FreeBSD: Implement xattr=sa 2021-12-13 12:22:11 -08:00
zfs_vnops_os.c FreeBSD: Implement xattr=sa 2021-12-13 12:22:11 -08:00
zfs_znode.c FreeBSD: Implement xattr=sa 2021-12-13 12:22:11 -08:00
zio_crypt.c Extending FreeBSD UIO Struct 2021-11-12 16:31:55 -08:00
zvol_os.c Extending FreeBSD UIO Struct 2021-11-12 16:31:55 -08:00