]> git.baikalelectronics.ru Git - kernel.git/commit
reiserfs: don't preallocate blocks for extended attributes
authorJeff Mahoney <jeffm@suse.com>
Thu, 22 Jun 2017 20:35:04 +0000 (16:35 -0400)
committerJan Kara <jack@suse.cz>
Fri, 23 Jun 2017 07:40:24 +0000 (09:40 +0200)
commitc5c3397ca84e2c25013b8d2e1eafe3569db4e574
treea806487d2847781850f772ec7edaeaea2148da5a
parenta1013a4ecc6d6f701421daabaf5402598d8608d7
reiserfs: don't preallocate blocks for extended attributes

Most extended attributes will fit in a single block.  More importantly,
we drop the reference to the inode while holding the transaction open
so the preallocated blocks aren't released.  As a result, the inode
may be evicted before it's removed from the transaction's prealloc list
which can cause memory corruption.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Jan Kara <jack@suse.cz>
fs/reiserfs/bitmap.c