Changeset View
Changeset View
Standalone View
Standalone View
sys/fs/fuse/fuse_node.h
Show First 20 Lines • Show All 119 Lines • ▼ Show 20 Lines | struct fuse_vnode_data { | ||||
/* | /* | ||||
* Monotonic time of the last FUSE operation that modified the file | * Monotonic time of the last FUSE operation that modified the file | ||||
* size. Used to avoid races between mutator ops like VOP_SETATTR and | * size. Used to avoid races between mutator ops like VOP_SETATTR and | ||||
* unlocked accessor ops like VOP_LOOKUP. | * unlocked accessor ops like VOP_LOOKUP. | ||||
*/ | */ | ||||
struct timespec last_local_modify; | struct timespec last_local_modify; | ||||
struct vattr cached_attrs; | struct vattr cached_attrs; | ||||
uint64_t nlookup; | uint64_t nlookup; | ||||
enum vtype vtype; | __enum_uint8(vtype) vtype; | ||||
struct vn_clusterw clusterw; | struct vn_clusterw clusterw; | ||||
}; | }; | ||||
/* | /* | ||||
* This overlays the fid structure (see mount.h). Mostly the same as the types | * This overlays the fid structure (see mount.h). Mostly the same as the types | ||||
* used by UFS and ext2. | * used by UFS and ext2. | ||||
*/ | */ | ||||
struct fuse_fid { | struct fuse_fid { | ||||
▲ Show 20 Lines • Show All 59 Lines • ▼ Show 20 Lines | |||||
int fuse_vnode_size(struct vnode *vp, off_t *filesize, struct ucred *cred, | int fuse_vnode_size(struct vnode *vp, off_t *filesize, struct ucred *cred, | ||||
struct thread *td); | struct thread *td); | ||||
void fuse_vnode_destroy(struct vnode *vp); | void fuse_vnode_destroy(struct vnode *vp); | ||||
int fuse_vnode_get(struct mount *mp, struct fuse_entry_out *feo, | int fuse_vnode_get(struct mount *mp, struct fuse_entry_out *feo, | ||||
uint64_t nodeid, struct vnode *dvp, struct vnode **vpp, | uint64_t nodeid, struct vnode *dvp, struct vnode **vpp, | ||||
struct componentname *cnp, enum vtype vtyp); | struct componentname *cnp, __enum_uint8(vtype) vtyp); | ||||
void fuse_vnode_open(struct vnode *vp, int32_t fuse_open_flags, | void fuse_vnode_open(struct vnode *vp, int32_t fuse_open_flags, | ||||
struct thread *td); | struct thread *td); | ||||
int fuse_vnode_savesize(struct vnode *vp, struct ucred *cred, pid_t pid); | int fuse_vnode_savesize(struct vnode *vp, struct ucred *cred, pid_t pid); | ||||
int fuse_vnode_setsize(struct vnode *vp, off_t newsize, bool from_server); | int fuse_vnode_setsize(struct vnode *vp, off_t newsize, bool from_server); | ||||
void fuse_vnode_undirty_cached_timestamps(struct vnode *vp, bool atime); | void fuse_vnode_undirty_cached_timestamps(struct vnode *vp, bool atime); | ||||
void fuse_vnode_update(struct vnode *vp, int flags); | void fuse_vnode_update(struct vnode *vp, int flags); | ||||
void fuse_node_init(void); | void fuse_node_init(void); | ||||
void fuse_node_destroy(void); | void fuse_node_destroy(void); | ||||
#endif /* _FUSE_NODE_H_ */ | #endif /* _FUSE_NODE_H_ */ |