Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: ext2/3/4: delete unneeded includes of module.h ext{3,4}: Fix potential race when setversion ioctl updates inode udf: Mark LVID buffer as uptodate before marking it dirty ext3: Don't warn from writepage when readonly inode is spotted after error jbd: Remove j_barrier mutex reiserfs: Force inode evictions before umount to avoid crash reiserfs: Fix quota mount option parsing udf: Treat symlink component of type 2 as / udf: Fix deadlock when converting file from in-ICB one to normal one udf: Cleanup calling convention of inode_getblk() ext2: Fix error handling on inode bitmap corruption ext3: Fix error handling on inode bitmap corruption ext3: replace ll_rw_block with other functions ext3: NULL dereference in ext3_evict_inode() jbd: clear revoked flag on buffers before a new transaction started ext3: call ext3_mark_recovery_complete() when recovery is really needed
Šī revīzija ir iekļauta:
@@ -455,16 +455,20 @@ int remove_save_link(struct inode *inode, int truncate)
|
||||
static void reiserfs_kill_sb(struct super_block *s)
|
||||
{
|
||||
if (REISERFS_SB(s)) {
|
||||
if (REISERFS_SB(s)->xattr_root) {
|
||||
d_invalidate(REISERFS_SB(s)->xattr_root);
|
||||
dput(REISERFS_SB(s)->xattr_root);
|
||||
REISERFS_SB(s)->xattr_root = NULL;
|
||||
}
|
||||
if (REISERFS_SB(s)->priv_root) {
|
||||
d_invalidate(REISERFS_SB(s)->priv_root);
|
||||
dput(REISERFS_SB(s)->priv_root);
|
||||
REISERFS_SB(s)->priv_root = NULL;
|
||||
}
|
||||
/*
|
||||
* Force any pending inode evictions to occur now. Any
|
||||
* inodes to be removed that have extended attributes
|
||||
* associated with them need to clean them up before
|
||||
* we can release the extended attribute root dentries.
|
||||
* shrink_dcache_for_umount will BUG if we don't release
|
||||
* those before it's called so ->put_super is too late.
|
||||
*/
|
||||
shrink_dcache_sb(s);
|
||||
|
||||
dput(REISERFS_SB(s)->xattr_root);
|
||||
REISERFS_SB(s)->xattr_root = NULL;
|
||||
dput(REISERFS_SB(s)->priv_root);
|
||||
REISERFS_SB(s)->priv_root = NULL;
|
||||
}
|
||||
|
||||
kill_block_super(s);
|
||||
@@ -1249,7 +1253,8 @@ static void handle_quota_files(struct super_block *s, char **qf_names,
|
||||
kfree(REISERFS_SB(s)->s_qf_names[i]);
|
||||
REISERFS_SB(s)->s_qf_names[i] = qf_names[i];
|
||||
}
|
||||
REISERFS_SB(s)->s_jquota_fmt = *qfmt;
|
||||
if (*qfmt)
|
||||
REISERFS_SB(s)->s_jquota_fmt = *qfmt;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user