aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/xfs/linux-2.6/xfs_iops.c7
-rw-r--r--fs/xfs/linux-2.6/xfs_lrw.h3
-rw-r--r--fs/xfs/linux-2.6/xfs_super.c2
-rw-r--r--fs/xfs/linux-2.6/xfs_vfs.c8
-rw-r--r--fs/xfs/linux-2.6/xfs_vfs.h18
-rw-r--r--fs/xfs/linux-2.6/xfs_vnode.h48
-rw-r--r--fs/xfs/quota/xfs_qm_bhv.c2
-rw-r--r--fs/xfs/xfs_acl.c4
-rw-r--r--fs/xfs/xfs_acl.h15
-rw-r--r--fs/xfs/xfs_attr.h13
-rw-r--r--fs/xfs/xfs_inode.h5
-rw-r--r--fs/xfs/xfs_mount.h11
12 files changed, 63 insertions, 73 deletions
diff --git a/fs/xfs/linux-2.6/xfs_iops.c b/fs/xfs/linux-2.6/xfs_iops.c
index 98d5a7e13bd5..59ba1dc65fa6 100644
--- a/fs/xfs/linux-2.6/xfs_iops.c
+++ b/fs/xfs/linux-2.6/xfs_iops.c
@@ -65,9 +65,8 @@ xfs_synchronize_atime(
65 65
66 vp = XFS_ITOV_NULL(ip); 66 vp = XFS_ITOV_NULL(ip);
67 if (vp) { 67 if (vp) {
68 struct inode *inode = &vp->v_inode; 68 ip->i_d.di_atime.t_sec = (__int32_t)vp->i_atime.tv_sec;
69 ip->i_d.di_atime.t_sec = (__int32_t)inode->i_atime.tv_sec; 69 ip->i_d.di_atime.t_nsec = (__int32_t)vp->i_atime.tv_nsec;
70 ip->i_d.di_atime.t_nsec = (__int32_t)inode->i_atime.tv_nsec;
71 } 70 }
72} 71}
73 72
@@ -327,7 +326,7 @@ xfs_vn_mknod(
327 if (!error) { 326 if (!error) {
328 error = _ACL_INHERIT(vp, &vattr, default_acl); 327 error = _ACL_INHERIT(vp, &vattr, default_acl);
329 if (!error) 328 if (!error)
330 xfs_iflags_set(XFS_I(&vp->v_inode), XFS_IMODIFIED); 329 xfs_iflags_set(XFS_I(vp), XFS_IMODIFIED);
331 else 330 else
332 xfs_cleanup_inode(dir, vp, dentry, mode); 331 xfs_cleanup_inode(dir, vp, dentry, mode);
333 } 332 }
diff --git a/fs/xfs/linux-2.6/xfs_lrw.h b/fs/xfs/linux-2.6/xfs_lrw.h
index fa7cefa86a82..4cd85c3360f5 100644
--- a/fs/xfs/linux-2.6/xfs_lrw.h
+++ b/fs/xfs/linux-2.6/xfs_lrw.h
@@ -19,7 +19,6 @@
19#define __XFS_LRW_H__ 19#define __XFS_LRW_H__
20 20
21struct bhv_desc; 21struct bhv_desc;
22struct bhv_vnode;
23struct xfs_mount; 22struct xfs_mount;
24struct xfs_iocore; 23struct xfs_iocore;
25struct xfs_inode; 24struct xfs_inode;
@@ -75,7 +74,7 @@ extern int xfsbdstrat(struct xfs_mount *, struct xfs_buf *);
75extern int xfs_bdstrat_cb(struct xfs_buf *); 74extern int xfs_bdstrat_cb(struct xfs_buf *);
76extern int xfs_dev_is_read_only(struct xfs_mount *, char *); 75extern int xfs_dev_is_read_only(struct xfs_mount *, char *);
77 76
78extern int xfs_zero_eof(struct bhv_vnode *, struct xfs_iocore *, xfs_off_t, 77extern int xfs_zero_eof(struct inode *, struct xfs_iocore *, xfs_off_t,
79 xfs_fsize_t); 78 xfs_fsize_t);
80 79
81#endif /* __XFS_LRW_H__ */ 80#endif /* __XFS_LRW_H__ */
diff --git a/fs/xfs/linux-2.6/xfs_super.c b/fs/xfs/linux-2.6/xfs_super.c
index bb0c4a932fd7..24073f8a292b 100644
--- a/fs/xfs/linux-2.6/xfs_super.c
+++ b/fs/xfs/linux-2.6/xfs_super.c
@@ -781,7 +781,7 @@ xfs_fs_fill_super(
781 void *data, 781 void *data,
782 int silent) 782 int silent)
783{ 783{
784 struct bhv_vnode *rootvp; 784 struct inode *rootvp;
785 struct bhv_vfs *vfsp = vfs_allocate(sb); 785 struct bhv_vfs *vfsp = vfs_allocate(sb);
786 struct xfs_mount_args *args = xfs_args_allocate(sb, silent); 786 struct xfs_mount_args *args = xfs_args_allocate(sb, silent);
787 struct kstatfs statvfs; 787 struct kstatfs statvfs;
diff --git a/fs/xfs/linux-2.6/xfs_vfs.c b/fs/xfs/linux-2.6/xfs_vfs.c
index 0dc87cd20229..c5ec272cdf22 100644
--- a/fs/xfs/linux-2.6/xfs_vfs.c
+++ b/fs/xfs/linux-2.6/xfs_vfs.c
@@ -103,7 +103,7 @@ vfs_mntupdate(
103int 103int
104vfs_root( 104vfs_root(
105 struct bhv_desc *bdp, 105 struct bhv_desc *bdp,
106 struct bhv_vnode **vpp) 106 bhv_vnode_t **vpp)
107{ 107{
108 struct bhv_desc *next = bdp; 108 struct bhv_desc *next = bdp;
109 109
@@ -117,7 +117,7 @@ int
117vfs_statvfs( 117vfs_statvfs(
118 struct bhv_desc *bdp, 118 struct bhv_desc *bdp,
119 bhv_statvfs_t *statp, 119 bhv_statvfs_t *statp,
120 struct bhv_vnode *vp) 120 bhv_vnode_t *vp)
121{ 121{
122 struct bhv_desc *next = bdp; 122 struct bhv_desc *next = bdp;
123 123
@@ -144,7 +144,7 @@ vfs_sync(
144int 144int
145vfs_vget( 145vfs_vget(
146 struct bhv_desc *bdp, 146 struct bhv_desc *bdp,
147 struct bhv_vnode **vpp, 147 bhv_vnode_t **vpp,
148 struct fid *fidp) 148 struct fid *fidp)
149{ 149{
150 struct bhv_desc *next = bdp; 150 struct bhv_desc *next = bdp;
@@ -186,7 +186,7 @@ vfs_quotactl(
186void 186void
187vfs_init_vnode( 187vfs_init_vnode(
188 struct bhv_desc *bdp, 188 struct bhv_desc *bdp,
189 struct bhv_vnode *vp, 189 bhv_vnode_t *vp,
190 struct xfs_inode *ip, 190 struct xfs_inode *ip,
191 int unlock) 191 int unlock)
192{ 192{
diff --git a/fs/xfs/linux-2.6/xfs_vfs.h b/fs/xfs/linux-2.6/xfs_vfs.h
index 75994e1318bc..768ffa96e62b 100644
--- a/fs/xfs/linux-2.6/xfs_vfs.h
+++ b/fs/xfs/linux-2.6/xfs_vfs.h
@@ -22,7 +22,7 @@
22#include "xfs_fs.h" 22#include "xfs_fs.h"
23 23
24struct bhv_vfs; 24struct bhv_vfs;
25struct bhv_vnode; 25struct inode;
26 26
27struct fid; 27struct fid;
28struct cred; 28struct cred;
@@ -124,15 +124,15 @@ typedef int (*vfs_showargs_t)(bhv_desc_t *, struct seq_file *);
124typedef int (*vfs_unmount_t)(bhv_desc_t *, int, struct cred *); 124typedef int (*vfs_unmount_t)(bhv_desc_t *, int, struct cred *);
125typedef int (*vfs_mntupdate_t)(bhv_desc_t *, int *, 125typedef int (*vfs_mntupdate_t)(bhv_desc_t *, int *,
126 struct xfs_mount_args *); 126 struct xfs_mount_args *);
127typedef int (*vfs_root_t)(bhv_desc_t *, struct bhv_vnode **); 127typedef int (*vfs_root_t)(bhv_desc_t *, struct inode **);
128typedef int (*vfs_statvfs_t)(bhv_desc_t *, bhv_statvfs_t *, 128typedef int (*vfs_statvfs_t)(bhv_desc_t *, bhv_statvfs_t *,
129 struct bhv_vnode *); 129 struct inode *);
130typedef int (*vfs_sync_t)(bhv_desc_t *, int, struct cred *); 130typedef int (*vfs_sync_t)(bhv_desc_t *, int, struct cred *);
131typedef int (*vfs_vget_t)(bhv_desc_t *, struct bhv_vnode **, struct fid *); 131typedef int (*vfs_vget_t)(bhv_desc_t *, struct inode **, struct fid *);
132typedef int (*vfs_dmapiops_t)(bhv_desc_t *, caddr_t); 132typedef int (*vfs_dmapiops_t)(bhv_desc_t *, caddr_t);
133typedef int (*vfs_quotactl_t)(bhv_desc_t *, int, int, caddr_t); 133typedef int (*vfs_quotactl_t)(bhv_desc_t *, int, int, caddr_t);
134typedef void (*vfs_init_vnode_t)(bhv_desc_t *, 134typedef void (*vfs_init_vnode_t)(bhv_desc_t *,
135 struct bhv_vnode *, struct xfs_inode *, int); 135 struct inode *, struct xfs_inode *, int);
136typedef void (*vfs_force_shutdown_t)(bhv_desc_t *, int, char *, int); 136typedef void (*vfs_force_shutdown_t)(bhv_desc_t *, int, char *, int);
137typedef void (*vfs_freeze_t)(bhv_desc_t *); 137typedef void (*vfs_freeze_t)(bhv_desc_t *);
138 138
@@ -196,13 +196,13 @@ extern int vfs_parseargs(bhv_desc_t *, char *, struct xfs_mount_args *, int);
196extern int vfs_showargs(bhv_desc_t *, struct seq_file *); 196extern int vfs_showargs(bhv_desc_t *, struct seq_file *);
197extern int vfs_unmount(bhv_desc_t *, int, struct cred *); 197extern int vfs_unmount(bhv_desc_t *, int, struct cred *);
198extern int vfs_mntupdate(bhv_desc_t *, int *, struct xfs_mount_args *); 198extern int vfs_mntupdate(bhv_desc_t *, int *, struct xfs_mount_args *);
199extern int vfs_root(bhv_desc_t *, struct bhv_vnode **); 199extern int vfs_root(bhv_desc_t *, struct inode **);
200extern int vfs_statvfs(bhv_desc_t *, bhv_statvfs_t *, struct bhv_vnode *); 200extern int vfs_statvfs(bhv_desc_t *, bhv_statvfs_t *, struct inode *);
201extern int vfs_sync(bhv_desc_t *, int, struct cred *); 201extern int vfs_sync(bhv_desc_t *, int, struct cred *);
202extern int vfs_vget(bhv_desc_t *, struct bhv_vnode **, struct fid *); 202extern int vfs_vget(bhv_desc_t *, struct inode **, struct fid *);
203extern int vfs_dmapiops(bhv_desc_t *, caddr_t); 203extern int vfs_dmapiops(bhv_desc_t *, caddr_t);
204extern int vfs_quotactl(bhv_desc_t *, int, int, caddr_t); 204extern int vfs_quotactl(bhv_desc_t *, int, int, caddr_t);
205extern void vfs_init_vnode(bhv_desc_t *, struct bhv_vnode *, struct xfs_inode *, int); 205extern void vfs_init_vnode(bhv_desc_t *, struct inode *, struct xfs_inode *, int);
206extern void vfs_force_shutdown(bhv_desc_t *, int, char *, int); 206extern void vfs_force_shutdown(bhv_desc_t *, int, char *, int);
207extern void vfs_freeze(bhv_desc_t *); 207extern void vfs_freeze(bhv_desc_t *);
208 208
diff --git a/fs/xfs/linux-2.6/xfs_vnode.h b/fs/xfs/linux-2.6/xfs_vnode.h
index a5c14a8d546a..4682c617f3a4 100644
--- a/fs/xfs/linux-2.6/xfs_vnode.h
+++ b/fs/xfs/linux-2.6/xfs_vnode.h
@@ -26,28 +26,24 @@ struct attrlist_cursor_kern;
26 26
27typedef struct dentry bhv_vname_t; 27typedef struct dentry bhv_vname_t;
28typedef __u64 bhv_vnumber_t; 28typedef __u64 bhv_vnumber_t;
29typedef struct inode bhv_vnode_t;
29 30
30typedef struct bhv_vnode { 31#define VN_ISLNK(vp) S_ISLNK((vp)->i_mode)
31 struct inode v_inode; /* Linux inode */ 32#define VN_ISREG(vp) S_ISREG((vp)->i_mode)
32 /* inode MUST be last */ 33#define VN_ISDIR(vp) S_ISDIR((vp)->i_mode)
33} bhv_vnode_t; 34#define VN_ISCHR(vp) S_ISCHR((vp)->i_mode)
34 35#define VN_ISBLK(vp) S_ISBLK((vp)->i_mode)
35#define VN_ISLNK(vp) S_ISLNK((vp)->v_inode.i_mode)
36#define VN_ISREG(vp) S_ISREG((vp)->v_inode.i_mode)
37#define VN_ISDIR(vp) S_ISDIR((vp)->v_inode.i_mode)
38#define VN_ISCHR(vp) S_ISCHR((vp)->v_inode.i_mode)
39#define VN_ISBLK(vp) S_ISBLK((vp)->v_inode.i_mode)
40 36
41/* 37/*
42 * Vnode to Linux inode mapping. 38 * Vnode to Linux inode mapping.
43 */ 39 */
44static inline struct bhv_vnode *vn_from_inode(struct inode *inode) 40static inline bhv_vnode_t *vn_from_inode(struct inode *inode)
45{ 41{
46 return container_of(inode, bhv_vnode_t, v_inode); 42 return inode;
47} 43}
48static inline struct inode *vn_to_inode(struct bhv_vnode *vnode) 44static inline struct inode *vn_to_inode(bhv_vnode_t *vnode)
49{ 45{
50 return &vnode->v_inode; 46 return vnode;
51} 47}
52 48
53/* 49/*
@@ -193,9 +189,9 @@ typedef struct bhv_vattr {
193 189
194extern void vn_init(void); 190extern void vn_init(void);
195extern bhv_vnode_t *vn_initialize(struct inode *); 191extern bhv_vnode_t *vn_initialize(struct inode *);
196extern int vn_revalidate(struct bhv_vnode *); 192extern int vn_revalidate(bhv_vnode_t *);
197extern int __vn_revalidate(struct bhv_vnode *, bhv_vattr_t *); 193extern int __vn_revalidate(bhv_vnode_t *, bhv_vattr_t *);
198extern void vn_revalidate_core(struct bhv_vnode *, bhv_vattr_t *); 194extern void vn_revalidate_core(bhv_vnode_t *, bhv_vattr_t *);
199 195
200/* 196/*
201 * Yeah, these don't take vnode anymore at all, all this should be 197 * 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);
205extern void vn_iowake(struct xfs_inode *ip); 201extern void vn_iowake(struct xfs_inode *ip);
206extern void vn_ioerror(struct xfs_inode *ip, int error, char *f, int l); 202extern void vn_ioerror(struct xfs_inode *ip, int error, char *f, int l);
207 203
208static inline int vn_count(struct bhv_vnode *vp) 204static inline int vn_count(bhv_vnode_t *vp)
209{ 205{
210 return atomic_read(&vn_to_inode(vp)->i_count); 206 return atomic_read(&vn_to_inode(vp)->i_count);
211} 207}
@@ -213,7 +209,7 @@ static inline int vn_count(struct bhv_vnode *vp)
213/* 209/*
214 * Vnode reference counting functions (and macros for compatibility). 210 * Vnode reference counting functions (and macros for compatibility).
215 */ 211 */
216extern bhv_vnode_t *vn_hold(struct bhv_vnode *); 212extern bhv_vnode_t *vn_hold(bhv_vnode_t *);
217 213
218#if defined(XFS_VNODE_TRACE) 214#if defined(XFS_VNODE_TRACE)
219#define VN_HOLD(vp) \ 215#define VN_HOLD(vp) \
@@ -227,7 +223,7 @@ extern bhv_vnode_t *vn_hold(struct bhv_vnode *);
227#define VN_RELE(vp) (iput(vn_to_inode(vp))) 223#define VN_RELE(vp) (iput(vn_to_inode(vp)))
228#endif 224#endif
229 225
230static inline struct bhv_vnode *vn_grab(struct bhv_vnode *vp) 226static inline bhv_vnode_t *vn_grab(bhv_vnode_t *vp)
231{ 227{
232 struct inode *inode = igrab(vn_to_inode(vp)); 228 struct inode *inode = igrab(vn_to_inode(vp));
233 return inode ? vn_from_inode(inode) : NULL; 229 return inode ? vn_from_inode(inode) : NULL;
@@ -243,12 +239,12 @@ static inline struct bhv_vnode *vn_grab(struct bhv_vnode *vp)
243/* 239/*
244 * Dealing with bad inodes 240 * Dealing with bad inodes
245 */ 241 */
246static inline void vn_mark_bad(struct bhv_vnode *vp) 242static inline void vn_mark_bad(bhv_vnode_t *vp)
247{ 243{
248 make_bad_inode(vn_to_inode(vp)); 244 make_bad_inode(vn_to_inode(vp));
249} 245}
250 246
251static inline int VN_BAD(struct bhv_vnode *vp) 247static inline int VN_BAD(bhv_vnode_t *vp)
252{ 248{
253 return is_bad_inode(vn_to_inode(vp)); 249 return is_bad_inode(vn_to_inode(vp));
254} 250}
@@ -258,18 +254,18 @@ static inline int VN_BAD(struct bhv_vnode *vp)
258 */ 254 */
259static inline void vn_atime_to_bstime(bhv_vnode_t *vp, xfs_bstime_t *bs_atime) 255static inline void vn_atime_to_bstime(bhv_vnode_t *vp, xfs_bstime_t *bs_atime)
260{ 256{
261 bs_atime->tv_sec = vp->v_inode.i_atime.tv_sec; 257 bs_atime->tv_sec = vp->i_atime.tv_sec;
262 bs_atime->tv_nsec = vp->v_inode.i_atime.tv_nsec; 258 bs_atime->tv_nsec = vp->i_atime.tv_nsec;
263} 259}
264 260
265static inline void vn_atime_to_timespec(bhv_vnode_t *vp, struct timespec *ts) 261static inline void vn_atime_to_timespec(bhv_vnode_t *vp, struct timespec *ts)
266{ 262{
267 *ts = vp->v_inode.i_atime; 263 *ts = vp->i_atime;
268} 264}
269 265
270static inline void vn_atime_to_time_t(bhv_vnode_t *vp, time_t *tt) 266static inline void vn_atime_to_time_t(bhv_vnode_t *vp, time_t *tt)
271{ 267{
272 *tt = vp->v_inode.i_atime.tv_sec; 268 *tt = vp->i_atime.tv_sec;
273} 269}
274 270
275/* 271/*
diff --git a/fs/xfs/quota/xfs_qm_bhv.c b/fs/xfs/quota/xfs_qm_bhv.c
index d2cdb8a2aad6..ca25ee31a02f 100644
--- a/fs/xfs/quota/xfs_qm_bhv.c
+++ b/fs/xfs/quota/xfs_qm_bhv.c
@@ -188,7 +188,7 @@ STATIC int
188xfs_qm_statvfs( 188xfs_qm_statvfs(
189 struct bhv_desc *bhv, 189 struct bhv_desc *bhv,
190 bhv_statvfs_t *statp, 190 bhv_statvfs_t *statp,
191 struct bhv_vnode *vnode) 191 bhv_vnode_t *vnode)
192{ 192{
193 xfs_mount_t *mp; 193 xfs_mount_t *mp;
194 xfs_inode_t *ip; 194 xfs_inode_t *ip;
diff --git a/fs/xfs/xfs_acl.c b/fs/xfs/xfs_acl.c
index 817d9e93c2c5..1b440f37371c 100644
--- a/fs/xfs/xfs_acl.c
+++ b/fs/xfs/xfs_acl.c
@@ -376,11 +376,11 @@ xfs_acl_allow_set(
376 bhv_vattr_t va; 376 bhv_vattr_t va;
377 int error; 377 int error;
378 378
379 if (vp->v_inode.i_flags & (S_IMMUTABLE|S_APPEND)) 379 if (vp->i_flags & (S_IMMUTABLE|S_APPEND))
380 return EPERM; 380 return EPERM;
381 if (kind == _ACL_TYPE_DEFAULT && !VN_ISDIR(vp)) 381 if (kind == _ACL_TYPE_DEFAULT && !VN_ISDIR(vp))
382 return ENOTDIR; 382 return ENOTDIR;
383 if (vp->v_inode.i_sb->s_flags & MS_RDONLY) 383 if (vp->i_sb->s_flags & MS_RDONLY)
384 return EROFS; 384 return EROFS;
385 va.va_mask = XFS_AT_UID; 385 va.va_mask = XFS_AT_UID;
386 error = xfs_getattr(ip, &va, 0); 386 error = xfs_getattr(ip, &va, 0);
diff --git a/fs/xfs/xfs_acl.h b/fs/xfs/xfs_acl.h
index f853cf1a6270..ab290daff6a8 100644
--- a/fs/xfs/xfs_acl.h
+++ b/fs/xfs/xfs_acl.h
@@ -50,7 +50,6 @@ typedef struct xfs_acl {
50#ifdef CONFIG_XFS_POSIX_ACL 50#ifdef CONFIG_XFS_POSIX_ACL
51 51
52struct vattr; 52struct vattr;
53struct bhv_vnode;
54struct xfs_inode; 53struct xfs_inode;
55 54
56extern struct kmem_zone *xfs_acl_zone; 55extern struct kmem_zone *xfs_acl_zone;
@@ -58,14 +57,14 @@ extern struct kmem_zone *xfs_acl_zone;
58 (zone) = kmem_zone_init(sizeof(xfs_acl_t), (name)) 57 (zone) = kmem_zone_init(sizeof(xfs_acl_t), (name))
59#define xfs_acl_zone_destroy(zone) kmem_zone_destroy(zone) 58#define xfs_acl_zone_destroy(zone) kmem_zone_destroy(zone)
60 59
61extern int xfs_acl_inherit(struct bhv_vnode *, struct bhv_vattr *, xfs_acl_t *); 60extern int xfs_acl_inherit(bhv_vnode_t *, struct bhv_vattr *, xfs_acl_t *);
62extern int xfs_acl_iaccess(struct xfs_inode *, mode_t, cred_t *); 61extern int xfs_acl_iaccess(struct xfs_inode *, mode_t, cred_t *);
63extern int xfs_acl_vtoacl(struct bhv_vnode *, xfs_acl_t *, xfs_acl_t *); 62extern int xfs_acl_vtoacl(bhv_vnode_t *, xfs_acl_t *, xfs_acl_t *);
64extern int xfs_acl_vhasacl_access(struct bhv_vnode *); 63extern int xfs_acl_vhasacl_access(bhv_vnode_t *);
65extern int xfs_acl_vhasacl_default(struct bhv_vnode *); 64extern int xfs_acl_vhasacl_default(bhv_vnode_t *);
66extern int xfs_acl_vset(struct bhv_vnode *, void *, size_t, int); 65extern int xfs_acl_vset(bhv_vnode_t *, void *, size_t, int);
67extern int xfs_acl_vget(struct bhv_vnode *, void *, size_t, int); 66extern int xfs_acl_vget(bhv_vnode_t *, void *, size_t, int);
68extern int xfs_acl_vremove(struct bhv_vnode *, int); 67extern int xfs_acl_vremove(bhv_vnode_t *, int);
69 68
70#define _ACL_TYPE_ACCESS 1 69#define _ACL_TYPE_ACCESS 1
71#define _ACL_TYPE_DEFAULT 2 70#define _ACL_TYPE_DEFAULT 2
diff --git a/fs/xfs/xfs_attr.h b/fs/xfs/xfs_attr.h
index 47c9ab1eae0b..786eba3121c4 100644
--- a/fs/xfs/xfs_attr.h
+++ b/fs/xfs/xfs_attr.h
@@ -36,14 +36,13 @@
36 *========================================================================*/ 36 *========================================================================*/
37 37
38struct cred; 38struct cred;
39struct bhv_vnode;
40struct xfs_attr_list_context; 39struct xfs_attr_list_context;
41 40
42typedef int (*attrset_t)(struct bhv_vnode *, char *, void *, size_t, int); 41typedef int (*attrset_t)(bhv_vnode_t *, char *, void *, size_t, int);
43typedef int (*attrget_t)(struct bhv_vnode *, char *, void *, size_t, int); 42typedef int (*attrget_t)(bhv_vnode_t *, char *, void *, size_t, int);
44typedef int (*attrremove_t)(struct bhv_vnode *, char *, int); 43typedef int (*attrremove_t)(bhv_vnode_t *, char *, int);
45typedef int (*attrexists_t)(struct bhv_vnode *); 44typedef int (*attrexists_t)(bhv_vnode_t *);
46typedef int (*attrcapable_t)(struct bhv_vnode *, struct cred *); 45typedef int (*attrcapable_t)(bhv_vnode_t *, struct cred *);
47 46
48typedef struct attrnames { 47typedef struct attrnames {
49 char * attr_name; 48 char * attr_name;
@@ -64,7 +63,7 @@ extern struct attrnames attr_trusted;
64extern struct attrnames *attr_namespaces[ATTR_NAMECOUNT]; 63extern struct attrnames *attr_namespaces[ATTR_NAMECOUNT];
65 64
66extern attrnames_t *attr_lookup_namespace(char *, attrnames_t **, int); 65extern attrnames_t *attr_lookup_namespace(char *, attrnames_t **, int);
67extern int attr_generic_list(struct bhv_vnode *, void *, size_t, int, ssize_t *); 66extern int attr_generic_list(bhv_vnode_t *, void *, size_t, int, ssize_t *);
68 67
69#define ATTR_DONTFOLLOW 0x0001 /* -- unused, from IRIX -- */ 68#define ATTR_DONTFOLLOW 0x0001 /* -- unused, from IRIX -- */
70#define ATTR_ROOT 0x0002 /* use attrs in root (trusted) namespace */ 69#define ATTR_ROOT 0x0002 /* use attrs in root (trusted) namespace */
diff --git a/fs/xfs/xfs_inode.h b/fs/xfs/xfs_inode.h
index 8a1457280f18..10eaee77379f 100644
--- a/fs/xfs/xfs_inode.h
+++ b/fs/xfs/xfs_inode.h
@@ -106,7 +106,6 @@ typedef struct xfs_ifork {
106 106
107#ifdef __KERNEL__ 107#ifdef __KERNEL__
108struct bhv_desc; 108struct bhv_desc;
109struct bhv_vnode;
110struct cred; 109struct cred;
111struct ktrace; 110struct ktrace;
112struct xfs_buf; 111struct xfs_buf;
@@ -257,7 +256,7 @@ typedef struct xfs_inode {
257 struct xfs_inode *i_mprev; /* ptr to prev inode */ 256 struct xfs_inode *i_mprev; /* ptr to prev inode */
258 struct xfs_mount *i_mount; /* fs mount struct ptr */ 257 struct xfs_mount *i_mount; /* fs mount struct ptr */
259 struct list_head i_reclaim; /* reclaim list */ 258 struct list_head i_reclaim; /* reclaim list */
260 struct bhv_vnode *i_vnode; /* vnode backpointer */ 259 bhv_vnode_t *i_vnode; /* vnode backpointer */
261 struct xfs_dquot *i_udquot; /* user dquot */ 260 struct xfs_dquot *i_udquot; /* user dquot */
262 struct xfs_dquot *i_gdquot; /* group dquot */ 261 struct xfs_dquot *i_gdquot; /* group dquot */
263 262
@@ -509,7 +508,7 @@ void xfs_ihash_init(struct xfs_mount *);
509void xfs_ihash_free(struct xfs_mount *); 508void xfs_ihash_free(struct xfs_mount *);
510xfs_inode_t *xfs_inode_incore(struct xfs_mount *, xfs_ino_t, 509xfs_inode_t *xfs_inode_incore(struct xfs_mount *, xfs_ino_t,
511 struct xfs_trans *); 510 struct xfs_trans *);
512void xfs_inode_lock_init(xfs_inode_t *, struct bhv_vnode *); 511void xfs_inode_lock_init(xfs_inode_t *, bhv_vnode_t *);
513int xfs_iget(struct xfs_mount *, struct xfs_trans *, xfs_ino_t, 512int xfs_iget(struct xfs_mount *, struct xfs_trans *, xfs_ino_t,
514 uint, uint, xfs_inode_t **, xfs_daddr_t); 513 uint, uint, xfs_inode_t **, xfs_daddr_t);
515void xfs_iput(xfs_inode_t *, uint); 514void xfs_iput(xfs_inode_t *, uint);
diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h
index f5e32f43cd62..02b9a6ee9403 100644
--- a/fs/xfs/xfs_mount.h
+++ b/fs/xfs/xfs_mount.h
@@ -55,7 +55,6 @@ typedef struct xfs_trans_reservations {
55struct cred; 55struct cred;
56struct log; 56struct log;
57struct bhv_vfs; 57struct bhv_vfs;
58struct bhv_vnode;
59struct xfs_mount_args; 58struct xfs_mount_args;
60struct xfs_inode; 59struct xfs_inode;
61struct xfs_iocore; 60struct xfs_iocore;
@@ -78,15 +77,15 @@ extern struct bhv_vfsops xfs_vfsops;
78 * Prototypes and functions for the Data Migration subsystem. 77 * Prototypes and functions for the Data Migration subsystem.
79 */ 78 */
80 79
81typedef int (*xfs_send_data_t)(int, struct bhv_vnode *, 80typedef int (*xfs_send_data_t)(int, bhv_vnode_t *,
82 xfs_off_t, size_t, int, bhv_vrwlock_t *); 81 xfs_off_t, size_t, int, bhv_vrwlock_t *);
83typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint); 82typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint);
84typedef int (*xfs_send_destroy_t)(struct bhv_vnode *, dm_right_t); 83typedef int (*xfs_send_destroy_t)(bhv_vnode_t *, dm_right_t);
85typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct bhv_vfs *, 84typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct bhv_vfs *,
86 struct bhv_vnode *, 85 bhv_vnode_t *,
87 dm_right_t, struct bhv_vnode *, dm_right_t, 86 dm_right_t, bhv_vnode_t *, dm_right_t,
88 char *, char *, mode_t, int, int); 87 char *, char *, mode_t, int, int);
89typedef void (*xfs_send_unmount_t)(struct bhv_vfs *, struct bhv_vnode *, 88typedef void (*xfs_send_unmount_t)(struct bhv_vfs *, bhv_vnode_t *,
90 dm_right_t, mode_t, int, int); 89 dm_right_t, mode_t, int, int);
91 90
92typedef struct xfs_dmops { 91typedef struct xfs_dmops {