Changeset View
Changeset View
Standalone View
Standalone View
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_znode.h
Show First 20 Lines • Show All 175 Lines • ▼ Show 20 Lines | typedef struct zfs_dirlock { | ||||
struct znode *dl_dzp; /* directory znode */ | struct znode *dl_dzp; /* directory znode */ | ||||
struct zfs_dirlock *dl_next; /* next in z_dirlocks list */ | struct zfs_dirlock *dl_next; /* next in z_dirlocks list */ | ||||
} zfs_dirlock_t; | } zfs_dirlock_t; | ||||
typedef struct znode { | typedef struct znode { | ||||
struct zfsvfs *z_zfsvfs; | struct zfsvfs *z_zfsvfs; | ||||
vnode_t *z_vnode; | vnode_t *z_vnode; | ||||
uint64_t z_id; /* object ID for this znode */ | uint64_t z_id; /* object ID for this znode */ | ||||
#ifdef illumos | |||||
kmutex_t z_lock; /* znode modification lock */ | kmutex_t z_lock; /* znode modification lock */ | ||||
krwlock_t z_parent_lock; /* parent lock for directories */ | krwlock_t z_parent_lock; /* parent lock for directories */ | ||||
krwlock_t z_name_lock; /* "master" lock for dirent locks */ | krwlock_t z_name_lock; /* "master" lock for dirent locks */ | ||||
zfs_dirlock_t *z_dirlocks; /* directory entry lock list */ | zfs_dirlock_t *z_dirlocks; /* directory entry lock list */ | ||||
#endif | |||||
kmutex_t z_range_lock; /* protects changes to z_range_avl */ | kmutex_t z_range_lock; /* protects changes to z_range_avl */ | ||||
avl_tree_t z_range_avl; /* avl tree of file range locks */ | avl_tree_t z_range_avl; /* avl tree of file range locks */ | ||||
uint8_t z_unlinked; /* file has been unlinked */ | uint8_t z_unlinked; /* file has been unlinked */ | ||||
uint8_t z_atime_dirty; /* atime needs to be synced */ | uint8_t z_atime_dirty; /* atime needs to be synced */ | ||||
uint8_t z_zn_prefetch; /* Prefetch znodes? */ | uint8_t z_zn_prefetch; /* Prefetch znodes? */ | ||||
uint8_t z_moved; /* Has this znode been moved? */ | uint8_t z_moved; /* Has this znode been moved? */ | ||||
uint_t z_blksz; /* block size in bytes */ | uint_t z_blksz; /* block size in bytes */ | ||||
uint_t z_seq; /* modification sequence number */ | uint_t z_seq; /* modification sequence number */ | ||||
▲ Show 20 Lines • Show All 180 Lines • Show Last 20 Lines |