lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 5 Mar 2014 14:22:26 +0000 From: Luis Henriques <luis.henriques@...onical.com> To: linux-kernel@...r.kernel.org, stable@...r.kernel.org, kernel-team@...ts.ubuntu.com Cc: Andreas Dilger <adilger.kernel@...ger.ca>, "Dr. Tilmann Bubeck" <t.bubeck@...nform.de>, Zheng Liu <wenqing.lz@...bao.com>, "Theodore Ts'o" <tytso@....edu>, Luis Henriques <luis.henriques@...onical.com> Subject: [PATCH 3.11 022/131] ext4: fix error paths in swap_inode_boot_loader() 3.11.10.6 -stable review patch. If anyone has any objections, please let me know. ------------------ From: Zheng Liu <wenqing.lz@...bao.com> commit 30d29b119ef01776e0a301444ab24defe8d8bef3 upstream. In swap_inode_boot_loader() we forgot to release ->i_mutex and resume unlocked dio for inode and inode_bl if there is an error starting the journal handle. This commit fixes this issue. Reported-by: Ahmed Tamrawi <ahmedtamrawi@...il.com> Cc: Andreas Dilger <adilger.kernel@...ger.ca> Cc: Dr. Tilmann Bubeck <t.bubeck@...nform.de> Signed-off-by: Zheng Liu <wenqing.lz@...bao.com> Signed-off-by: "Theodore Ts'o" <tytso@....edu> Signed-off-by: Luis Henriques <luis.henriques@...onical.com> --- fs/ext4/ioctl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c index c0427e2..42624a9 100644 --- a/fs/ext4/ioctl.c +++ b/fs/ext4/ioctl.c @@ -145,7 +145,7 @@ static long swap_inode_boot_loader(struct super_block *sb, handle = ext4_journal_start(inode_bl, EXT4_HT_MOVE_EXTENTS, 2); if (IS_ERR(handle)) { err = -EINVAL; - goto swap_boot_out; + goto journal_err_out; } /* Protect extent tree against block allocations via delalloc */ @@ -203,6 +203,7 @@ static long swap_inode_boot_loader(struct super_block *sb, ext4_double_up_write_data_sem(inode, inode_bl); +journal_err_out: ext4_inode_resume_unlocked_dio(inode); ext4_inode_resume_unlocked_dio(inode_bl); -- 1.9.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists