X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=include%2Fsys%2Fzfs_sa.h;h=0bac7808a86ccc428e381fbd1e9170df5044a7b2;hb=82a37189aac955c81a59a5ecc3400475adb56355;hp=90bb9972b948f8c998872fb8b257b13017b35be0;hpb=e89236fd28cbe8585146b8b5d0ced1f8d4aa8431;p=zfs.git diff --git a/include/sys/zfs_sa.h b/include/sys/zfs_sa.h index 90bb997..0bac780 100644 --- a/include/sys/zfs_sa.h +++ b/include/sys/zfs_sa.h @@ -73,6 +73,7 @@ typedef enum zpl_attr { ZPL_SYMLINK, ZPL_SCANSTAMP, ZPL_DACL_ACES, + ZPL_DXATTR, ZPL_END } zpl_attr_t; @@ -126,12 +127,20 @@ typedef struct znode_phys { } znode_phys_t; #ifdef _KERNEL + +#define DXATTR_MAX_ENTRY_SIZE (32768) +#define DXATTR_MAX_SA_SIZE (SPA_MAXBLOCKSIZE >> 1) + int zfs_sa_readlink(struct znode *, uio_t *); void zfs_sa_symlink(struct znode *, char *link, int len, dmu_tx_t *); void zfs_sa_get_scanstamp(struct znode *, xvattr_t *); void zfs_sa_set_scanstamp(struct znode *, xvattr_t *, dmu_tx_t *); +int zfs_sa_get_xattr(struct znode *); +int zfs_sa_set_xattr(struct znode *); void zfs_sa_upgrade(struct sa_handle *, dmu_tx_t *); void zfs_sa_upgrade_txholds(dmu_tx_t *, struct znode *); +void zfs_sa_init(void); +void zfs_sa_fini(void); #endif #ifdef __cplusplus