diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-11 10:14:54 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-11 10:14:54 -0700 |
commit | 32983696a48a6c41d99f3eca82ba7510a552d843 (patch) | |
tree | ab793556d6a9d2d4e0f366eed58e74b8e705cd8c /fs/jfs/inode.c | |
parent | ce1289adeb67b5480f35cb257cbf6e9881153783 (diff) | |
parent | 1d15b10f95d4c4295a0f2288c7be7b6a005490da (diff) | |
download | op-kernel-dev-32983696a48a6c41d99f3eca82ba7510a552d843.zip op-kernel-dev-32983696a48a6c41d99f3eca82ba7510a552d843.tar.gz |
Merge branch 'for-linus' from kernel.org:/.../shaggy/jfs-2.6 manually
Clash due to new delete_inode behavior (the filesystem now needs to do
the truncate_inode_pages() call itself).
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/jfs/inode.c')
-rw-r--r-- | fs/jfs/inode.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/fs/jfs/inode.c b/fs/jfs/inode.c index cff352f..0ec62d5 100644 --- a/fs/jfs/inode.c +++ b/fs/jfs/inode.c @@ -128,23 +128,23 @@ 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))) { - truncate_inode_pages(&inode->i_data, 0); + truncate_inode_pages(&inode->i_data, 0); - 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); } |