提交 0a74cd19 编写于 作者: C Christoph Hellwig 提交者: Tim Shimmin

[XFS] kill struct bhv_vnode

Now that struct bhv_vnode is empty we can just kill it. Retain bhv_vnode_t
as a typedef for struct inode for the time being until all the fallout is
cleaned up.

SGI-PV: 969608
SGI-Modid: xfs-linux-melb:xfs-kern:29500a
Signed-off-by: NChristoph Hellwig <hch@infradead.org>
Signed-off-by: NDavid Chinner <dgc@sgi.com>
Signed-off-by: NTim Shimmin <tes@sgi.com>
上级 2aeaa258
...@@ -65,9 +65,8 @@ xfs_synchronize_atime( ...@@ -65,9 +65,8 @@ xfs_synchronize_atime(
vp = XFS_ITOV_NULL(ip); vp = XFS_ITOV_NULL(ip);
if (vp) { if (vp) {
struct inode *inode = &vp->v_inode; ip->i_d.di_atime.t_sec = (__int32_t)vp->i_atime.tv_sec;
ip->i_d.di_atime.t_sec = (__int32_t)inode->i_atime.tv_sec; ip->i_d.di_atime.t_nsec = (__int32_t)vp->i_atime.tv_nsec;
ip->i_d.di_atime.t_nsec = (__int32_t)inode->i_atime.tv_nsec;
} }
} }
...@@ -327,7 +326,7 @@ xfs_vn_mknod( ...@@ -327,7 +326,7 @@ xfs_vn_mknod(
if (!error) { if (!error) {
error = _ACL_INHERIT(vp, &vattr, default_acl); error = _ACL_INHERIT(vp, &vattr, default_acl);
if (!error) if (!error)
xfs_iflags_set(XFS_I(&vp->v_inode), XFS_IMODIFIED); xfs_iflags_set(XFS_I(vp), XFS_IMODIFIED);
else else
xfs_cleanup_inode(dir, vp, dentry, mode); xfs_cleanup_inode(dir, vp, dentry, mode);
} }
......
...@@ -19,7 +19,6 @@ ...@@ -19,7 +19,6 @@
#define __XFS_LRW_H__ #define __XFS_LRW_H__
struct bhv_desc; struct bhv_desc;
struct bhv_vnode;
struct xfs_mount; struct xfs_mount;
struct xfs_iocore; struct xfs_iocore;
struct xfs_inode; struct xfs_inode;
...@@ -75,7 +74,7 @@ extern int xfsbdstrat(struct xfs_mount *, struct xfs_buf *); ...@@ -75,7 +74,7 @@ extern int xfsbdstrat(struct xfs_mount *, struct xfs_buf *);
extern int xfs_bdstrat_cb(struct xfs_buf *); extern int xfs_bdstrat_cb(struct xfs_buf *);
extern int xfs_dev_is_read_only(struct xfs_mount *, char *); extern int xfs_dev_is_read_only(struct xfs_mount *, char *);
extern int xfs_zero_eof(struct bhv_vnode *, struct xfs_iocore *, xfs_off_t, extern int xfs_zero_eof(struct inode *, struct xfs_iocore *, xfs_off_t,
xfs_fsize_t); xfs_fsize_t);
#endif /* __XFS_LRW_H__ */ #endif /* __XFS_LRW_H__ */
...@@ -781,7 +781,7 @@ xfs_fs_fill_super( ...@@ -781,7 +781,7 @@ xfs_fs_fill_super(
void *data, void *data,
int silent) int silent)
{ {
struct bhv_vnode *rootvp; struct inode *rootvp;
struct bhv_vfs *vfsp = vfs_allocate(sb); struct bhv_vfs *vfsp = vfs_allocate(sb);
struct xfs_mount_args *args = xfs_args_allocate(sb, silent); struct xfs_mount_args *args = xfs_args_allocate(sb, silent);
struct kstatfs statvfs; struct kstatfs statvfs;
......
...@@ -103,7 +103,7 @@ vfs_mntupdate( ...@@ -103,7 +103,7 @@ vfs_mntupdate(
int int
vfs_root( vfs_root(
struct bhv_desc *bdp, struct bhv_desc *bdp,
struct bhv_vnode **vpp) bhv_vnode_t **vpp)
{ {
struct bhv_desc *next = bdp; struct bhv_desc *next = bdp;
...@@ -117,7 +117,7 @@ int ...@@ -117,7 +117,7 @@ int
vfs_statvfs( vfs_statvfs(
struct bhv_desc *bdp, struct bhv_desc *bdp,
bhv_statvfs_t *statp, bhv_statvfs_t *statp,
struct bhv_vnode *vp) bhv_vnode_t *vp)
{ {
struct bhv_desc *next = bdp; struct bhv_desc *next = bdp;
...@@ -144,7 +144,7 @@ vfs_sync( ...@@ -144,7 +144,7 @@ vfs_sync(
int int
vfs_vget( vfs_vget(
struct bhv_desc *bdp, struct bhv_desc *bdp,
struct bhv_vnode **vpp, bhv_vnode_t **vpp,
struct fid *fidp) struct fid *fidp)
{ {
struct bhv_desc *next = bdp; struct bhv_desc *next = bdp;
...@@ -186,7 +186,7 @@ vfs_quotactl( ...@@ -186,7 +186,7 @@ vfs_quotactl(
void void
vfs_init_vnode( vfs_init_vnode(
struct bhv_desc *bdp, struct bhv_desc *bdp,
struct bhv_vnode *vp, bhv_vnode_t *vp,
struct xfs_inode *ip, struct xfs_inode *ip,
int unlock) int unlock)
{ {
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
#include "xfs_fs.h" #include "xfs_fs.h"
struct bhv_vfs; struct bhv_vfs;
struct bhv_vnode; struct inode;
struct fid; struct fid;
struct cred; struct cred;
...@@ -124,15 +124,15 @@ typedef int (*vfs_showargs_t)(bhv_desc_t *, struct seq_file *); ...@@ -124,15 +124,15 @@ typedef int (*vfs_showargs_t)(bhv_desc_t *, struct seq_file *);
typedef int (*vfs_unmount_t)(bhv_desc_t *, int, struct cred *); typedef int (*vfs_unmount_t)(bhv_desc_t *, int, struct cred *);
typedef int (*vfs_mntupdate_t)(bhv_desc_t *, int *, typedef int (*vfs_mntupdate_t)(bhv_desc_t *, int *,
struct xfs_mount_args *); struct xfs_mount_args *);
typedef int (*vfs_root_t)(bhv_desc_t *, struct bhv_vnode **); typedef int (*vfs_root_t)(bhv_desc_t *, struct inode **);
typedef int (*vfs_statvfs_t)(bhv_desc_t *, bhv_statvfs_t *, typedef int (*vfs_statvfs_t)(bhv_desc_t *, bhv_statvfs_t *,
struct bhv_vnode *); struct inode *);
typedef int (*vfs_sync_t)(bhv_desc_t *, int, struct cred *); typedef int (*vfs_sync_t)(bhv_desc_t *, int, struct cred *);
typedef int (*vfs_vget_t)(bhv_desc_t *, struct bhv_vnode **, struct fid *); typedef int (*vfs_vget_t)(bhv_desc_t *, struct inode **, struct fid *);
typedef int (*vfs_dmapiops_t)(bhv_desc_t *, caddr_t); typedef int (*vfs_dmapiops_t)(bhv_desc_t *, caddr_t);
typedef int (*vfs_quotactl_t)(bhv_desc_t *, int, int, caddr_t); typedef int (*vfs_quotactl_t)(bhv_desc_t *, int, int, caddr_t);
typedef void (*vfs_init_vnode_t)(bhv_desc_t *, typedef void (*vfs_init_vnode_t)(bhv_desc_t *,
struct bhv_vnode *, struct xfs_inode *, int); struct inode *, struct xfs_inode *, int);
typedef void (*vfs_force_shutdown_t)(bhv_desc_t *, int, char *, int); typedef void (*vfs_force_shutdown_t)(bhv_desc_t *, int, char *, int);
typedef void (*vfs_freeze_t)(bhv_desc_t *); typedef void (*vfs_freeze_t)(bhv_desc_t *);
...@@ -196,13 +196,13 @@ extern int vfs_parseargs(bhv_desc_t *, char *, struct xfs_mount_args *, int); ...@@ -196,13 +196,13 @@ extern int vfs_parseargs(bhv_desc_t *, char *, struct xfs_mount_args *, int);
extern int vfs_showargs(bhv_desc_t *, struct seq_file *); extern int vfs_showargs(bhv_desc_t *, struct seq_file *);
extern int vfs_unmount(bhv_desc_t *, int, struct cred *); extern int vfs_unmount(bhv_desc_t *, int, struct cred *);
extern int vfs_mntupdate(bhv_desc_t *, int *, struct xfs_mount_args *); extern int vfs_mntupdate(bhv_desc_t *, int *, struct xfs_mount_args *);
extern int vfs_root(bhv_desc_t *, struct bhv_vnode **); extern int vfs_root(bhv_desc_t *, struct inode **);
extern int vfs_statvfs(bhv_desc_t *, bhv_statvfs_t *, struct bhv_vnode *); extern int vfs_statvfs(bhv_desc_t *, bhv_statvfs_t *, struct inode *);
extern int vfs_sync(bhv_desc_t *, int, struct cred *); extern int vfs_sync(bhv_desc_t *, int, struct cred *);
extern int vfs_vget(bhv_desc_t *, struct bhv_vnode **, struct fid *); extern int vfs_vget(bhv_desc_t *, struct inode **, struct fid *);
extern int vfs_dmapiops(bhv_desc_t *, caddr_t); extern int vfs_dmapiops(bhv_desc_t *, caddr_t);
extern int vfs_quotactl(bhv_desc_t *, int, int, caddr_t); extern int vfs_quotactl(bhv_desc_t *, int, int, caddr_t);
extern void vfs_init_vnode(bhv_desc_t *, struct bhv_vnode *, struct xfs_inode *, int); extern void vfs_init_vnode(bhv_desc_t *, struct inode *, struct xfs_inode *, int);
extern void vfs_force_shutdown(bhv_desc_t *, int, char *, int); extern void vfs_force_shutdown(bhv_desc_t *, int, char *, int);
extern void vfs_freeze(bhv_desc_t *); extern void vfs_freeze(bhv_desc_t *);
......
...@@ -26,28 +26,24 @@ struct attrlist_cursor_kern; ...@@ -26,28 +26,24 @@ struct attrlist_cursor_kern;
typedef struct dentry bhv_vname_t; typedef struct dentry bhv_vname_t;
typedef __u64 bhv_vnumber_t; typedef __u64 bhv_vnumber_t;
typedef struct inode bhv_vnode_t;
typedef struct bhv_vnode { #define VN_ISLNK(vp) S_ISLNK((vp)->i_mode)
struct inode v_inode; /* Linux inode */ #define VN_ISREG(vp) S_ISREG((vp)->i_mode)
/* inode MUST be last */ #define VN_ISDIR(vp) S_ISDIR((vp)->i_mode)
} bhv_vnode_t; #define VN_ISCHR(vp) S_ISCHR((vp)->i_mode)
#define VN_ISBLK(vp) S_ISBLK((vp)->i_mode)
#define VN_ISLNK(vp) S_ISLNK((vp)->v_inode.i_mode)
#define VN_ISREG(vp) S_ISREG((vp)->v_inode.i_mode)
#define VN_ISDIR(vp) S_ISDIR((vp)->v_inode.i_mode)
#define VN_ISCHR(vp) S_ISCHR((vp)->v_inode.i_mode)
#define VN_ISBLK(vp) S_ISBLK((vp)->v_inode.i_mode)
/* /*
* Vnode to Linux inode mapping. * Vnode to Linux inode mapping.
*/ */
static inline struct bhv_vnode *vn_from_inode(struct inode *inode) static inline bhv_vnode_t *vn_from_inode(struct inode *inode)
{ {
return container_of(inode, bhv_vnode_t, v_inode); return inode;
} }
static inline struct inode *vn_to_inode(struct bhv_vnode *vnode) static inline struct inode *vn_to_inode(bhv_vnode_t *vnode)
{ {
return &vnode->v_inode; return vnode;
} }
/* /*
...@@ -193,9 +189,9 @@ typedef struct bhv_vattr { ...@@ -193,9 +189,9 @@ typedef struct bhv_vattr {
extern void vn_init(void); extern void vn_init(void);
extern bhv_vnode_t *vn_initialize(struct inode *); extern bhv_vnode_t *vn_initialize(struct inode *);
extern int vn_revalidate(struct bhv_vnode *); extern int vn_revalidate(bhv_vnode_t *);
extern int __vn_revalidate(struct bhv_vnode *, bhv_vattr_t *); extern int __vn_revalidate(bhv_vnode_t *, bhv_vattr_t *);
extern void vn_revalidate_core(struct bhv_vnode *, bhv_vattr_t *); extern void vn_revalidate_core(bhv_vnode_t *, bhv_vattr_t *);
/* /*
* Yeah, these don't take vnode anymore at all, all this should be * Yeah, these don't take vnode anymore at all, all this should be
...@@ -205,7 +201,7 @@ extern void vn_iowait(struct xfs_inode *ip); ...@@ -205,7 +201,7 @@ extern void vn_iowait(struct xfs_inode *ip);
extern void vn_iowake(struct xfs_inode *ip); extern void vn_iowake(struct xfs_inode *ip);
extern void vn_ioerror(struct xfs_inode *ip, int error, char *f, int l); extern void vn_ioerror(struct xfs_inode *ip, int error, char *f, int l);
static inline int vn_count(struct bhv_vnode *vp) static inline int vn_count(bhv_vnode_t *vp)
{ {
return atomic_read(&vn_to_inode(vp)->i_count); return atomic_read(&vn_to_inode(vp)->i_count);
} }
...@@ -213,7 +209,7 @@ static inline int vn_count(struct bhv_vnode *vp) ...@@ -213,7 +209,7 @@ static inline int vn_count(struct bhv_vnode *vp)
/* /*
* Vnode reference counting functions (and macros for compatibility). * Vnode reference counting functions (and macros for compatibility).
*/ */
extern bhv_vnode_t *vn_hold(struct bhv_vnode *); extern bhv_vnode_t *vn_hold(bhv_vnode_t *);
#if defined(XFS_VNODE_TRACE) #if defined(XFS_VNODE_TRACE)
#define VN_HOLD(vp) \ #define VN_HOLD(vp) \
...@@ -227,7 +223,7 @@ extern bhv_vnode_t *vn_hold(struct bhv_vnode *); ...@@ -227,7 +223,7 @@ extern bhv_vnode_t *vn_hold(struct bhv_vnode *);
#define VN_RELE(vp) (iput(vn_to_inode(vp))) #define VN_RELE(vp) (iput(vn_to_inode(vp)))
#endif #endif
static inline struct bhv_vnode *vn_grab(struct bhv_vnode *vp) static inline bhv_vnode_t *vn_grab(bhv_vnode_t *vp)
{ {
struct inode *inode = igrab(vn_to_inode(vp)); struct inode *inode = igrab(vn_to_inode(vp));
return inode ? vn_from_inode(inode) : NULL; return inode ? vn_from_inode(inode) : NULL;
...@@ -243,12 +239,12 @@ static inline struct bhv_vnode *vn_grab(struct bhv_vnode *vp) ...@@ -243,12 +239,12 @@ static inline struct bhv_vnode *vn_grab(struct bhv_vnode *vp)
/* /*
* Dealing with bad inodes * Dealing with bad inodes
*/ */
static inline void vn_mark_bad(struct bhv_vnode *vp) static inline void vn_mark_bad(bhv_vnode_t *vp)
{ {
make_bad_inode(vn_to_inode(vp)); make_bad_inode(vn_to_inode(vp));
} }
static inline int VN_BAD(struct bhv_vnode *vp) static inline int VN_BAD(bhv_vnode_t *vp)
{ {
return is_bad_inode(vn_to_inode(vp)); return is_bad_inode(vn_to_inode(vp));
} }
...@@ -258,18 +254,18 @@ static inline int VN_BAD(struct bhv_vnode *vp) ...@@ -258,18 +254,18 @@ static inline int VN_BAD(struct bhv_vnode *vp)
*/ */
static inline void vn_atime_to_bstime(bhv_vnode_t *vp, xfs_bstime_t *bs_atime) static inline void vn_atime_to_bstime(bhv_vnode_t *vp, xfs_bstime_t *bs_atime)
{ {
bs_atime->tv_sec = vp->v_inode.i_atime.tv_sec; bs_atime->tv_sec = vp->i_atime.tv_sec;
bs_atime->tv_nsec = vp->v_inode.i_atime.tv_nsec; bs_atime->tv_nsec = vp->i_atime.tv_nsec;
} }
static inline void vn_atime_to_timespec(bhv_vnode_t *vp, struct timespec *ts) static inline void vn_atime_to_timespec(bhv_vnode_t *vp, struct timespec *ts)
{ {
*ts = vp->v_inode.i_atime; *ts = vp->i_atime;
} }
static inline void vn_atime_to_time_t(bhv_vnode_t *vp, time_t *tt) static inline void vn_atime_to_time_t(bhv_vnode_t *vp, time_t *tt)
{ {
*tt = vp->v_inode.i_atime.tv_sec; *tt = vp->i_atime.tv_sec;
} }
/* /*
......
...@@ -188,7 +188,7 @@ STATIC int ...@@ -188,7 +188,7 @@ STATIC int
xfs_qm_statvfs( xfs_qm_statvfs(
struct bhv_desc *bhv, struct bhv_desc *bhv,
bhv_statvfs_t *statp, bhv_statvfs_t *statp,
struct bhv_vnode *vnode) bhv_vnode_t *vnode)
{ {
xfs_mount_t *mp; xfs_mount_t *mp;
xfs_inode_t *ip; xfs_inode_t *ip;
......
...@@ -376,11 +376,11 @@ xfs_acl_allow_set( ...@@ -376,11 +376,11 @@ xfs_acl_allow_set(
bhv_vattr_t va; bhv_vattr_t va;
int error; int error;
if (vp->v_inode.i_flags & (S_IMMUTABLE|S_APPEND)) if (vp->i_flags & (S_IMMUTABLE|S_APPEND))
return EPERM; return EPERM;
if (kind == _ACL_TYPE_DEFAULT && !VN_ISDIR(vp)) if (kind == _ACL_TYPE_DEFAULT && !VN_ISDIR(vp))
return ENOTDIR; return ENOTDIR;
if (vp->v_inode.i_sb->s_flags & MS_RDONLY) if (vp->i_sb->s_flags & MS_RDONLY)
return EROFS; return EROFS;
va.va_mask = XFS_AT_UID; va.va_mask = XFS_AT_UID;
error = xfs_getattr(ip, &va, 0); error = xfs_getattr(ip, &va, 0);
......
...@@ -50,7 +50,6 @@ typedef struct xfs_acl { ...@@ -50,7 +50,6 @@ typedef struct xfs_acl {
#ifdef CONFIG_XFS_POSIX_ACL #ifdef CONFIG_XFS_POSIX_ACL
struct vattr; struct vattr;
struct bhv_vnode;
struct xfs_inode; struct xfs_inode;
extern struct kmem_zone *xfs_acl_zone; extern struct kmem_zone *xfs_acl_zone;
...@@ -58,14 +57,14 @@ extern struct kmem_zone *xfs_acl_zone; ...@@ -58,14 +57,14 @@ extern struct kmem_zone *xfs_acl_zone;
(zone) = kmem_zone_init(sizeof(xfs_acl_t), (name)) (zone) = kmem_zone_init(sizeof(xfs_acl_t), (name))
#define xfs_acl_zone_destroy(zone) kmem_zone_destroy(zone) #define xfs_acl_zone_destroy(zone) kmem_zone_destroy(zone)
extern int xfs_acl_inherit(struct bhv_vnode *, struct bhv_vattr *, xfs_acl_t *); extern int xfs_acl_inherit(bhv_vnode_t *, struct bhv_vattr *, xfs_acl_t *);
extern int xfs_acl_iaccess(struct xfs_inode *, mode_t, cred_t *); extern int xfs_acl_iaccess(struct xfs_inode *, mode_t, cred_t *);
extern int xfs_acl_vtoacl(struct bhv_vnode *, xfs_acl_t *, xfs_acl_t *); extern int xfs_acl_vtoacl(bhv_vnode_t *, xfs_acl_t *, xfs_acl_t *);
extern int xfs_acl_vhasacl_access(struct bhv_vnode *); extern int xfs_acl_vhasacl_access(bhv_vnode_t *);
extern int xfs_acl_vhasacl_default(struct bhv_vnode *); extern int xfs_acl_vhasacl_default(bhv_vnode_t *);
extern int xfs_acl_vset(struct bhv_vnode *, void *, size_t, int); extern int xfs_acl_vset(bhv_vnode_t *, void *, size_t, int);
extern int xfs_acl_vget(struct bhv_vnode *, void *, size_t, int); extern int xfs_acl_vget(bhv_vnode_t *, void *, size_t, int);
extern int xfs_acl_vremove(struct bhv_vnode *, int); extern int xfs_acl_vremove(bhv_vnode_t *, int);
#define _ACL_TYPE_ACCESS 1 #define _ACL_TYPE_ACCESS 1
#define _ACL_TYPE_DEFAULT 2 #define _ACL_TYPE_DEFAULT 2
......
...@@ -36,14 +36,13 @@ ...@@ -36,14 +36,13 @@
*========================================================================*/ *========================================================================*/
struct cred; struct cred;
struct bhv_vnode;
struct xfs_attr_list_context; struct xfs_attr_list_context;
typedef int (*attrset_t)(struct bhv_vnode *, char *, void *, size_t, int); typedef int (*attrset_t)(bhv_vnode_t *, char *, void *, size_t, int);
typedef int (*attrget_t)(struct bhv_vnode *, char *, void *, size_t, int); typedef int (*attrget_t)(bhv_vnode_t *, char *, void *, size_t, int);
typedef int (*attrremove_t)(struct bhv_vnode *, char *, int); typedef int (*attrremove_t)(bhv_vnode_t *, char *, int);
typedef int (*attrexists_t)(struct bhv_vnode *); typedef int (*attrexists_t)(bhv_vnode_t *);
typedef int (*attrcapable_t)(struct bhv_vnode *, struct cred *); typedef int (*attrcapable_t)(bhv_vnode_t *, struct cred *);
typedef struct attrnames { typedef struct attrnames {
char * attr_name; char * attr_name;
...@@ -64,7 +63,7 @@ extern struct attrnames attr_trusted; ...@@ -64,7 +63,7 @@ extern struct attrnames attr_trusted;
extern struct attrnames *attr_namespaces[ATTR_NAMECOUNT]; extern struct attrnames *attr_namespaces[ATTR_NAMECOUNT];
extern attrnames_t *attr_lookup_namespace(char *, attrnames_t **, int); extern attrnames_t *attr_lookup_namespace(char *, attrnames_t **, int);
extern int attr_generic_list(struct bhv_vnode *, void *, size_t, int, ssize_t *); extern int attr_generic_list(bhv_vnode_t *, void *, size_t, int, ssize_t *);
#define ATTR_DONTFOLLOW 0x0001 /* -- unused, from IRIX -- */ #define ATTR_DONTFOLLOW 0x0001 /* -- unused, from IRIX -- */
#define ATTR_ROOT 0x0002 /* use attrs in root (trusted) namespace */ #define ATTR_ROOT 0x0002 /* use attrs in root (trusted) namespace */
......
...@@ -106,7 +106,6 @@ typedef struct xfs_ifork { ...@@ -106,7 +106,6 @@ typedef struct xfs_ifork {
#ifdef __KERNEL__ #ifdef __KERNEL__
struct bhv_desc; struct bhv_desc;
struct bhv_vnode;
struct cred; struct cred;
struct ktrace; struct ktrace;
struct xfs_buf; struct xfs_buf;
...@@ -257,7 +256,7 @@ typedef struct xfs_inode { ...@@ -257,7 +256,7 @@ typedef struct xfs_inode {
struct xfs_inode *i_mprev; /* ptr to prev inode */ struct xfs_inode *i_mprev; /* ptr to prev inode */
struct xfs_mount *i_mount; /* fs mount struct ptr */ struct xfs_mount *i_mount; /* fs mount struct ptr */
struct list_head i_reclaim; /* reclaim list */ struct list_head i_reclaim; /* reclaim list */
struct bhv_vnode *i_vnode; /* vnode backpointer */ bhv_vnode_t *i_vnode; /* vnode backpointer */
struct xfs_dquot *i_udquot; /* user dquot */ struct xfs_dquot *i_udquot; /* user dquot */
struct xfs_dquot *i_gdquot; /* group dquot */ struct xfs_dquot *i_gdquot; /* group dquot */
...@@ -509,7 +508,7 @@ void xfs_ihash_init(struct xfs_mount *); ...@@ -509,7 +508,7 @@ void xfs_ihash_init(struct xfs_mount *);
void xfs_ihash_free(struct xfs_mount *); void xfs_ihash_free(struct xfs_mount *);
xfs_inode_t *xfs_inode_incore(struct xfs_mount *, xfs_ino_t, xfs_inode_t *xfs_inode_incore(struct xfs_mount *, xfs_ino_t,
struct xfs_trans *); struct xfs_trans *);
void xfs_inode_lock_init(xfs_inode_t *, struct bhv_vnode *); void xfs_inode_lock_init(xfs_inode_t *, bhv_vnode_t *);
int xfs_iget(struct xfs_mount *, struct xfs_trans *, xfs_ino_t, int xfs_iget(struct xfs_mount *, struct xfs_trans *, xfs_ino_t,
uint, uint, xfs_inode_t **, xfs_daddr_t); uint, uint, xfs_inode_t **, xfs_daddr_t);
void xfs_iput(xfs_inode_t *, uint); void xfs_iput(xfs_inode_t *, uint);
......
...@@ -55,7 +55,6 @@ typedef struct xfs_trans_reservations { ...@@ -55,7 +55,6 @@ typedef struct xfs_trans_reservations {
struct cred; struct cred;
struct log; struct log;
struct bhv_vfs; struct bhv_vfs;
struct bhv_vnode;
struct xfs_mount_args; struct xfs_mount_args;
struct xfs_inode; struct xfs_inode;
struct xfs_iocore; struct xfs_iocore;
...@@ -78,15 +77,15 @@ extern struct bhv_vfsops xfs_vfsops; ...@@ -78,15 +77,15 @@ extern struct bhv_vfsops xfs_vfsops;
* Prototypes and functions for the Data Migration subsystem. * Prototypes and functions for the Data Migration subsystem.
*/ */
typedef int (*xfs_send_data_t)(int, struct bhv_vnode *, typedef int (*xfs_send_data_t)(int, bhv_vnode_t *,
xfs_off_t, size_t, int, bhv_vrwlock_t *); xfs_off_t, size_t, int, bhv_vrwlock_t *);
typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint); typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint);
typedef int (*xfs_send_destroy_t)(struct bhv_vnode *, dm_right_t); typedef int (*xfs_send_destroy_t)(bhv_vnode_t *, dm_right_t);
typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct bhv_vfs *, typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct bhv_vfs *,
struct bhv_vnode *, bhv_vnode_t *,
dm_right_t, struct bhv_vnode *, dm_right_t, dm_right_t, bhv_vnode_t *, dm_right_t,
char *, char *, mode_t, int, int); char *, char *, mode_t, int, int);
typedef void (*xfs_send_unmount_t)(struct bhv_vfs *, struct bhv_vnode *, typedef void (*xfs_send_unmount_t)(struct bhv_vfs *, bhv_vnode_t *,
dm_right_t, mode_t, int, int); dm_right_t, mode_t, int, int);
typedef struct xfs_dmops { typedef struct xfs_dmops {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册