From: Linus Torvalds Date: Sun, 11 Sep 2005 17:14:54 +0000 (-0700) Subject: Merge branch 'for-linus' from kernel.org:/.../shaggy/jfs-2.6 manually X-Git-Tag: v2.6.14-rc1~116 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=32983696a48a6c41d99f3eca82ba7510a552d843;p=linux-2.6 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 --- 32983696a48a6c41d99f3eca82ba7510a552d843 diff --cc fs/jfs/inode.c index cff352f4ec,37da3e33e7..0ec62d5310 --- a/fs/jfs/inode.c +++ b/fs/jfs/inode.c @@@ -128,23 -128,21 +128,23 @@@ void jfs_delete_inode(struct inode *ino { 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); }