diff options
author | Christoph Hellwig <hch@infradead.org> | 2007-08-28 21:53:12 -0400 |
---|---|---|
committer | Tim Shimmin <tes@chook.melbourne.sgi.com> | 2007-10-15 21:40:24 -0400 |
commit | 0a74cd1964501fdb577176f14ed3d02b8e148127 (patch) | |
tree | ec4aa3dff46b141cd60734bb6c8a0c6b6a2e7111 | |
parent | 2aeaa258c0527026228c43148ec6dffdc56bea1c (diff) |
[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: Christoph Hellwig <hch@infradead.org>
Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
-rw-r--r-- | fs/xfs/linux-2.6/xfs_iops.c | 7 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_lrw.h | 3 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_super.c | 2 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_vfs.c | 8 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_vfs.h | 18 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_vnode.h | 48 | ||||
-rw-r--r-- | fs/xfs/quota/xfs_qm_bhv.c | 2 | ||||
-rw-r--r-- | fs/xfs/xfs_acl.c | 4 | ||||
-rw-r--r-- | fs/xfs/xfs_acl.h | 15 | ||||
-rw-r--r-- | fs/xfs/xfs_attr.h | 13 | ||||
-rw-r--r-- | fs/xfs/xfs_inode.h | 5 | ||||
-rw-r--r-- | fs/xfs/xfs_mount.h | 11 |
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 | ||
21 | struct bhv_desc; | 21 | struct bhv_desc; |
22 | struct bhv_vnode; | ||
23 | struct xfs_mount; | 22 | struct xfs_mount; |
24 | struct xfs_iocore; | 23 | struct xfs_iocore; |
25 | struct xfs_inode; | 24 | struct xfs_inode; |
@@ -75,7 +74,7 @@ extern int xfsbdstrat(struct xfs_mount *, struct xfs_buf *); | |||
75 | extern int xfs_bdstrat_cb(struct xfs_buf *); | 74 | extern int xfs_bdstrat_cb(struct xfs_buf *); |
76 | extern int xfs_dev_is_read_only(struct xfs_mount *, char *); | 75 | extern int xfs_dev_is_read_only(struct xfs_mount *, char *); |
77 | 76 | ||
78 | extern int xfs_zero_eof(struct bhv_vnode *, struct xfs_iocore *, xfs_off_t, | 77 | extern 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( | |||
103 | int | 103 | int |
104 | vfs_root( | 104 | vfs_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 | |||
117 | vfs_statvfs( | 117 | vfs_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( | |||
144 | int | 144 | int |
145 | vfs_vget( | 145 | vfs_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( | |||
186 | void | 186 | void |
187 | vfs_init_vnode( | 187 | vfs_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 | ||
24 | struct bhv_vfs; | 24 | struct bhv_vfs; |
25 | struct bhv_vnode; | 25 | struct inode; |
26 | 26 | ||
27 | struct fid; | 27 | struct fid; |
28 | struct cred; | 28 | struct cred; |
@@ -124,15 +124,15 @@ typedef int (*vfs_showargs_t)(bhv_desc_t *, struct seq_file *); | |||
124 | typedef int (*vfs_unmount_t)(bhv_desc_t *, int, struct cred *); | 124 | typedef int (*vfs_unmount_t)(bhv_desc_t *, int, struct cred *); |
125 | typedef int (*vfs_mntupdate_t)(bhv_desc_t *, int *, | 125 | typedef int (*vfs_mntupdate_t)(bhv_desc_t *, int *, |
126 | struct xfs_mount_args *); | 126 | struct xfs_mount_args *); |
127 | typedef int (*vfs_root_t)(bhv_desc_t *, struct bhv_vnode **); | 127 | typedef int (*vfs_root_t)(bhv_desc_t *, struct inode **); |
128 | typedef int (*vfs_statvfs_t)(bhv_desc_t *, bhv_statvfs_t *, | 128 | typedef int (*vfs_statvfs_t)(bhv_desc_t *, bhv_statvfs_t *, |
129 | struct bhv_vnode *); | 129 | struct inode *); |
130 | typedef int (*vfs_sync_t)(bhv_desc_t *, int, struct cred *); | 130 | typedef int (*vfs_sync_t)(bhv_desc_t *, int, struct cred *); |
131 | typedef int (*vfs_vget_t)(bhv_desc_t *, struct bhv_vnode **, struct fid *); | 131 | typedef int (*vfs_vget_t)(bhv_desc_t *, struct inode **, struct fid *); |
132 | typedef int (*vfs_dmapiops_t)(bhv_desc_t *, caddr_t); | 132 | typedef int (*vfs_dmapiops_t)(bhv_desc_t *, caddr_t); |
133 | typedef int (*vfs_quotactl_t)(bhv_desc_t *, int, int, caddr_t); | 133 | typedef int (*vfs_quotactl_t)(bhv_desc_t *, int, int, caddr_t); |
134 | typedef void (*vfs_init_vnode_t)(bhv_desc_t *, | 134 | typedef void (*vfs_init_vnode_t)(bhv_desc_t *, |
135 | struct bhv_vnode *, struct xfs_inode *, int); | 135 | struct inode *, struct xfs_inode *, int); |
136 | typedef void (*vfs_force_shutdown_t)(bhv_desc_t *, int, char *, int); | 136 | typedef void (*vfs_force_shutdown_t)(bhv_desc_t *, int, char *, int); |
137 | typedef void (*vfs_freeze_t)(bhv_desc_t *); | 137 | typedef 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); | |||
196 | extern int vfs_showargs(bhv_desc_t *, struct seq_file *); | 196 | extern int vfs_showargs(bhv_desc_t *, struct seq_file *); |
197 | extern int vfs_unmount(bhv_desc_t *, int, struct cred *); | 197 | extern int vfs_unmount(bhv_desc_t *, int, struct cred *); |
198 | extern int vfs_mntupdate(bhv_desc_t *, int *, struct xfs_mount_args *); | 198 | extern int vfs_mntupdate(bhv_desc_t *, int *, struct xfs_mount_args *); |
199 | extern int vfs_root(bhv_desc_t *, struct bhv_vnode **); | 199 | extern int vfs_root(bhv_desc_t *, struct inode **); |
200 | extern int vfs_statvfs(bhv_desc_t *, bhv_statvfs_t *, struct bhv_vnode *); | 200 | extern int vfs_statvfs(bhv_desc_t *, bhv_statvfs_t *, struct inode *); |
201 | extern int vfs_sync(bhv_desc_t *, int, struct cred *); | 201 | extern int vfs_sync(bhv_desc_t *, int, struct cred *); |
202 | extern int vfs_vget(bhv_desc_t *, struct bhv_vnode **, struct fid *); | 202 | extern int vfs_vget(bhv_desc_t *, struct inode **, struct fid *); |
203 | extern int vfs_dmapiops(bhv_desc_t *, caddr_t); | 203 | extern int vfs_dmapiops(bhv_desc_t *, caddr_t); |
204 | extern int vfs_quotactl(bhv_desc_t *, int, int, caddr_t); | 204 | extern int vfs_quotactl(bhv_desc_t *, int, int, caddr_t); |
205 | extern void vfs_init_vnode(bhv_desc_t *, struct bhv_vnode *, struct xfs_inode *, int); | 205 | extern void vfs_init_vnode(bhv_desc_t *, struct inode *, struct xfs_inode *, int); |
206 | extern void vfs_force_shutdown(bhv_desc_t *, int, char *, int); | 206 | extern void vfs_force_shutdown(bhv_desc_t *, int, char *, int); |
207 | extern void vfs_freeze(bhv_desc_t *); | 207 | extern 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 | ||
27 | typedef struct dentry bhv_vname_t; | 27 | typedef struct dentry bhv_vname_t; |
28 | typedef __u64 bhv_vnumber_t; | 28 | typedef __u64 bhv_vnumber_t; |
29 | typedef struct inode bhv_vnode_t; | ||
29 | 30 | ||
30 | typedef 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 | */ |
44 | static inline struct bhv_vnode *vn_from_inode(struct inode *inode) | 40 | static 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 | } |
48 | static inline struct inode *vn_to_inode(struct bhv_vnode *vnode) | 44 | static 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 | ||
194 | extern void vn_init(void); | 190 | extern void vn_init(void); |
195 | extern bhv_vnode_t *vn_initialize(struct inode *); | 191 | extern bhv_vnode_t *vn_initialize(struct inode *); |
196 | extern int vn_revalidate(struct bhv_vnode *); | 192 | extern int vn_revalidate(bhv_vnode_t *); |
197 | extern int __vn_revalidate(struct bhv_vnode *, bhv_vattr_t *); | 193 | extern int __vn_revalidate(bhv_vnode_t *, bhv_vattr_t *); |
198 | extern void vn_revalidate_core(struct bhv_vnode *, bhv_vattr_t *); | 194 | extern 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); | |||
205 | extern void vn_iowake(struct xfs_inode *ip); | 201 | extern void vn_iowake(struct xfs_inode *ip); |
206 | extern void vn_ioerror(struct xfs_inode *ip, int error, char *f, int l); | 202 | extern void vn_ioerror(struct xfs_inode *ip, int error, char *f, int l); |
207 | 203 | ||
208 | static inline int vn_count(struct bhv_vnode *vp) | 204 | static 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 | */ |
216 | extern bhv_vnode_t *vn_hold(struct bhv_vnode *); | 212 | extern 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 | ||
230 | static inline struct bhv_vnode *vn_grab(struct bhv_vnode *vp) | 226 | static 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 | */ |
246 | static inline void vn_mark_bad(struct bhv_vnode *vp) | 242 | static 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 | ||
251 | static inline int VN_BAD(struct bhv_vnode *vp) | 247 | static 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 | */ |
259 | static inline void vn_atime_to_bstime(bhv_vnode_t *vp, xfs_bstime_t *bs_atime) | 255 | static 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 | ||
265 | static inline void vn_atime_to_timespec(bhv_vnode_t *vp, struct timespec *ts) | 261 | static 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 | ||
270 | static inline void vn_atime_to_time_t(bhv_vnode_t *vp, time_t *tt) | 266 | static 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 | |||
188 | xfs_qm_statvfs( | 188 | xfs_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 | ||
52 | struct vattr; | 52 | struct vattr; |
53 | struct bhv_vnode; | ||
54 | struct xfs_inode; | 53 | struct xfs_inode; |
55 | 54 | ||
56 | extern struct kmem_zone *xfs_acl_zone; | 55 | extern 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 | ||
61 | extern int xfs_acl_inherit(struct bhv_vnode *, struct bhv_vattr *, xfs_acl_t *); | 60 | extern int xfs_acl_inherit(bhv_vnode_t *, struct bhv_vattr *, xfs_acl_t *); |
62 | extern int xfs_acl_iaccess(struct xfs_inode *, mode_t, cred_t *); | 61 | extern int xfs_acl_iaccess(struct xfs_inode *, mode_t, cred_t *); |
63 | extern int xfs_acl_vtoacl(struct bhv_vnode *, xfs_acl_t *, xfs_acl_t *); | 62 | extern int xfs_acl_vtoacl(bhv_vnode_t *, xfs_acl_t *, xfs_acl_t *); |
64 | extern int xfs_acl_vhasacl_access(struct bhv_vnode *); | 63 | extern int xfs_acl_vhasacl_access(bhv_vnode_t *); |
65 | extern int xfs_acl_vhasacl_default(struct bhv_vnode *); | 64 | extern int xfs_acl_vhasacl_default(bhv_vnode_t *); |
66 | extern int xfs_acl_vset(struct bhv_vnode *, void *, size_t, int); | 65 | extern int xfs_acl_vset(bhv_vnode_t *, void *, size_t, int); |
67 | extern int xfs_acl_vget(struct bhv_vnode *, void *, size_t, int); | 66 | extern int xfs_acl_vget(bhv_vnode_t *, void *, size_t, int); |
68 | extern int xfs_acl_vremove(struct bhv_vnode *, int); | 67 | extern 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 | ||
38 | struct cred; | 38 | struct cred; |
39 | struct bhv_vnode; | ||
40 | struct xfs_attr_list_context; | 39 | struct xfs_attr_list_context; |
41 | 40 | ||
42 | typedef int (*attrset_t)(struct bhv_vnode *, char *, void *, size_t, int); | 41 | typedef int (*attrset_t)(bhv_vnode_t *, char *, void *, size_t, int); |
43 | typedef int (*attrget_t)(struct bhv_vnode *, char *, void *, size_t, int); | 42 | typedef int (*attrget_t)(bhv_vnode_t *, char *, void *, size_t, int); |
44 | typedef int (*attrremove_t)(struct bhv_vnode *, char *, int); | 43 | typedef int (*attrremove_t)(bhv_vnode_t *, char *, int); |
45 | typedef int (*attrexists_t)(struct bhv_vnode *); | 44 | typedef int (*attrexists_t)(bhv_vnode_t *); |
46 | typedef int (*attrcapable_t)(struct bhv_vnode *, struct cred *); | 45 | typedef int (*attrcapable_t)(bhv_vnode_t *, struct cred *); |
47 | 46 | ||
48 | typedef struct attrnames { | 47 | typedef struct attrnames { |
49 | char * attr_name; | 48 | char * attr_name; |
@@ -64,7 +63,7 @@ extern struct attrnames attr_trusted; | |||
64 | extern struct attrnames *attr_namespaces[ATTR_NAMECOUNT]; | 63 | extern struct attrnames *attr_namespaces[ATTR_NAMECOUNT]; |
65 | 64 | ||
66 | extern attrnames_t *attr_lookup_namespace(char *, attrnames_t **, int); | 65 | extern attrnames_t *attr_lookup_namespace(char *, attrnames_t **, int); |
67 | extern int attr_generic_list(struct bhv_vnode *, void *, size_t, int, ssize_t *); | 66 | extern 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__ |
108 | struct bhv_desc; | 108 | struct bhv_desc; |
109 | struct bhv_vnode; | ||
110 | struct cred; | 109 | struct cred; |
111 | struct ktrace; | 110 | struct ktrace; |
112 | struct xfs_buf; | 111 | struct 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 *); | |||
509 | void xfs_ihash_free(struct xfs_mount *); | 508 | void xfs_ihash_free(struct xfs_mount *); |
510 | xfs_inode_t *xfs_inode_incore(struct xfs_mount *, xfs_ino_t, | 509 | xfs_inode_t *xfs_inode_incore(struct xfs_mount *, xfs_ino_t, |
511 | struct xfs_trans *); | 510 | struct xfs_trans *); |
512 | void xfs_inode_lock_init(xfs_inode_t *, struct bhv_vnode *); | 511 | void xfs_inode_lock_init(xfs_inode_t *, bhv_vnode_t *); |
513 | int xfs_iget(struct xfs_mount *, struct xfs_trans *, xfs_ino_t, | 512 | int 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); |
515 | void xfs_iput(xfs_inode_t *, uint); | 514 | void 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 { | |||
55 | struct cred; | 55 | struct cred; |
56 | struct log; | 56 | struct log; |
57 | struct bhv_vfs; | 57 | struct bhv_vfs; |
58 | struct bhv_vnode; | ||
59 | struct xfs_mount_args; | 58 | struct xfs_mount_args; |
60 | struct xfs_inode; | 59 | struct xfs_inode; |
61 | struct xfs_iocore; | 60 | struct 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 | ||
81 | typedef int (*xfs_send_data_t)(int, struct bhv_vnode *, | 80 | typedef 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 *); |
83 | typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint); | 82 | typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint); |
84 | typedef int (*xfs_send_destroy_t)(struct bhv_vnode *, dm_right_t); | 83 | typedef int (*xfs_send_destroy_t)(bhv_vnode_t *, dm_right_t); |
85 | typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct bhv_vfs *, | 84 | typedef 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); |
89 | typedef void (*xfs_send_unmount_t)(struct bhv_vfs *, struct bhv_vnode *, | 88 | typedef 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 | ||
92 | typedef struct xfs_dmops { | 91 | typedef struct xfs_dmops { |