diff options
author | 2005-08-30 14:28:56 -0500 | |
---|---|---|
committer | 2005-08-30 14:28:56 -0500 | |
commit | b1b5d7f9b7ac6a8e3452ac43a53eebf69fdf5a77 (patch) | |
tree | 365e7fdc04910e5b7589e4b96c5efa06edb33191 /fs/jfs | |
parent | Merge refs/heads/upstream from master.kernel.org:/pub/scm/linux/kernel/git/jg... (diff) | |
download | linux-b1b5d7f9b7ac6a8e3452ac43a53eebf69fdf5a77.tar.gz linux-b1b5d7f9b7ac6a8e3452ac43a53eebf69fdf5a77.tar.bz2 linux-b1b5d7f9b7ac6a8e3452ac43a53eebf69fdf5a77.zip |
JFS: jfs_delete_inode should always call clear_inode.
Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
Diffstat (limited to 'fs/jfs')
-rw-r--r-- | fs/jfs/inode.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/fs/jfs/inode.c b/fs/jfs/inode.c index 767c7ecb429e..37da3e33e750 100644 --- a/fs/jfs/inode.c +++ b/fs/jfs/inode.c @@ -128,21 +128,21 @@ void jfs_delete_inode(struct inode *inode) { jfs_info("In jfs_delete_inode, inode = 0x%p", inode); - if (is_bad_inode(inode) || - (JFS_IP(inode)->fileset != cpu_to_le32(FILESYSTEM_I))) - return; + if (!is_bad_inode(inode) && + (JFS_IP(inode)->fileset == cpu_to_le32(FILESYSTEM_I))) { - if (test_cflag(COMMIT_Freewmap, inode)) - jfs_free_zero_link(inode); + if (test_cflag(COMMIT_Freewmap, inode)) + jfs_free_zero_link(inode); - diFree(inode); + diFree(inode); - /* - * Free the inode from the quota allocation. - */ - DQUOT_INIT(inode); - DQUOT_FREE_INODE(inode); - DQUOT_DROP(inode); + /* + * Free the inode from the quota allocation. + */ + DQUOT_INIT(inode); + DQUOT_FREE_INODE(inode); + DQUOT_DROP(inode); + } clear_inode(inode); } |