Merge branch 'for_linus_urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Pull ext4 bugfix from Ted Ts'o. [ Hmm. It's possible we should make kfree() aware of error pointers, and use IS_ERR_OR_NULL rather than a NULL check. But in the meantime this is obviously the right fix. - Linus ] * 'for_linus_urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: ext4: avoid trying to kfree an ERR_PTR pointer
This commit is contained in:
Коммит
8c68face55
|
@ -3240,6 +3240,7 @@ static int ext4_rename(struct inode *old_dir, struct dentry *old_dentry,
|
||||||
&new.de, &new.inlined);
|
&new.de, &new.inlined);
|
||||||
if (IS_ERR(new.bh)) {
|
if (IS_ERR(new.bh)) {
|
||||||
retval = PTR_ERR(new.bh);
|
retval = PTR_ERR(new.bh);
|
||||||
|
new.bh = NULL;
|
||||||
goto end_rename;
|
goto end_rename;
|
||||||
}
|
}
|
||||||
if (new.bh) {
|
if (new.bh) {
|
||||||
|
@ -3386,6 +3387,7 @@ static int ext4_cross_rename(struct inode *old_dir, struct dentry *old_dentry,
|
||||||
&new.de, &new.inlined);
|
&new.de, &new.inlined);
|
||||||
if (IS_ERR(new.bh)) {
|
if (IS_ERR(new.bh)) {
|
||||||
retval = PTR_ERR(new.bh);
|
retval = PTR_ERR(new.bh);
|
||||||
|
new.bh = NULL;
|
||||||
goto end_rename;
|
goto end_rename;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -575,6 +575,7 @@ handle_bb:
|
||||||
bh = bclean(handle, sb, block);
|
bh = bclean(handle, sb, block);
|
||||||
if (IS_ERR(bh)) {
|
if (IS_ERR(bh)) {
|
||||||
err = PTR_ERR(bh);
|
err = PTR_ERR(bh);
|
||||||
|
bh = NULL;
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
overhead = ext4_group_overhead_blocks(sb, group);
|
overhead = ext4_group_overhead_blocks(sb, group);
|
||||||
|
@ -603,6 +604,7 @@ handle_ib:
|
||||||
bh = bclean(handle, sb, block);
|
bh = bclean(handle, sb, block);
|
||||||
if (IS_ERR(bh)) {
|
if (IS_ERR(bh)) {
|
||||||
err = PTR_ERR(bh);
|
err = PTR_ERR(bh);
|
||||||
|
bh = NULL;
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче