diff options
author | Christoph Hellwig <hch@infradead.org> | 2008-08-13 02:23:13 -0400 |
---|---|---|
committer | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-08-13 02:23:13 -0400 |
commit | 41be8bed1f3168f34386f3a15d63682cfd586b8e (patch) | |
tree | 8cddec00890168b807853e5b6761625a3e194f3e /fs/xfs/xfs_iget.c | |
parent | 5ec7f8c7d14a3ea6bf920b3350f5c5d3527cb837 (diff) |
[XFS] sanitize xfs_initialize_vnode
Sanitize setting up the Linux indode.
Setting up the xfs_inode <-> inode link is opencoded in xfs_iget_core now
because that's the only place it needs to be done, xfs_initialize_vnode is
renamed to xfs_setup_inode and loses all superflous paramaters. The check
for I_NEW is removed because it always is true and the di_mode check moves
into xfs_iget_core because it's only needed there.
xfs_set_inodeops and xfs_revalidate_inode are merged into xfs_setup_inode
and the whole things is moved into xfs_iops.c where it belongs.
SGI-PV: 981498
SGI-Modid: xfs-linux-melb:xfs-kern:31782a
Signed-off-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Niv Sardi <xaiki@sgi.com>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_iget.c')
-rw-r--r-- | fs/xfs/xfs_iget.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/fs/xfs/xfs_iget.c b/fs/xfs/xfs_iget.c index d44342640ca3..539c2dd8eae8 100644 --- a/fs/xfs/xfs_iget.c +++ b/fs/xfs/xfs_iget.c | |||
@@ -288,10 +288,17 @@ finish_inode: | |||
288 | *ipp = ip; | 288 | *ipp = ip; |
289 | 289 | ||
290 | /* | 290 | /* |
291 | * Set up the Linux with the Linux inode. | ||
292 | */ | ||
293 | ip->i_vnode = inode; | ||
294 | inode->i_private = ip; | ||
295 | |||
296 | /* | ||
291 | * If we have a real type for an on-disk inode, we can set ops(&unlock) | 297 | * If we have a real type for an on-disk inode, we can set ops(&unlock) |
292 | * now. If it's a new inode being created, xfs_ialloc will handle it. | 298 | * now. If it's a new inode being created, xfs_ialloc will handle it. |
293 | */ | 299 | */ |
294 | xfs_initialize_vnode(mp, inode, ip); | 300 | if (ip->i_d.di_mode != 0) |
301 | xfs_setup_inode(ip); | ||
295 | return 0; | 302 | return 0; |
296 | } | 303 | } |
297 | 304 | ||