[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160811173255.GD10626@thunk.org>
Date: Thu, 11 Aug 2016 13:32:55 -0400
From: Theodore Ts'o <tytso@....edu>
To: Jan Kara <jack@...e.cz>
Cc: linux-ext4@...r.kernel.org, Dave Chinner <david@...morbit.com>,
stable@...r.kernel.org#4.4.x-
Subject: Re: [PATCH 04/11] ext4: Avoid deadlock when expanding inode size
On Wed, Aug 03, 2016 at 12:39:48PM +0200, Jan Kara wrote:
> When we need to move xattrs into external xattr block, we call
> ext4_xattr_block_set() from ext4_expand_extra_isize_ea(). That may end
> up calling ext4_mark_inode_dirty() again which will recurse back into
> the inode expansion code leading to deadlocks.
>
> Protect from recursion using EXT4_STATE_NO_EXPAND inode flag and move
> its management into ext4_expand_extra_isize_ea() since its manipulation
> is safe there (due to xattr_sem) from possible races with
> ext4_xattr_set_handle() which plays with it as well.
>
> CC: <stable@...r.kernel.org> # 4.4.x-
> Signed-off-by: Jan Kara <jack@...e.cz>
Thanks, applied.
- Ted
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists