From: Theodore Ts'o Subject: Re: [PATCH] ext4: ext4_da_convert_inline_data_to_extent drop locked page after error Date: Tue, 2 Dec 2014 18:59:13 -0500 Message-ID: <20141202235913.GJ13618@thunk.org> References: <1417530500-9958-1-git-send-email-dmonakhov@openvz.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-ext4@vger.kernel.org To: Dmitry Monakhov Return-path: Received: from imap.thunk.org ([74.207.234.97]:35711 "EHLO imap.thunk.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933319AbaLBX7U (ORCPT ); Tue, 2 Dec 2014 18:59:20 -0500 Content-Disposition: inline In-Reply-To: <1417530500-9958-1-git-send-email-dmonakhov@openvz.org> Sender: linux-ext4-owner@vger.kernel.org List-ID: On Tue, Dec 02, 2014 at 06:28:20PM +0400, Dmitry Monakhov wrote: > Testcase: > xfstests generic/270 > MKFS_OPTIONS="-q -I 256 -O inline_data,64bit" > > Call Trace: > [] lock_page+0x35/0x39 -------> DEADLOCK > [] pagecache_get_page+0x65/0x15a > [] truncate_inode_pages_range+0x1db/0x45c > [] ? ext4_da_get_block_prep+0x439/0x4b6 > [] ? __block_write_begin+0x284/0x29c > [] ? ext4_change_inode_journal_flag+0x16b/0x16b > [] truncate_inode_pages+0x12/0x14 > [] ext4_truncate_failed_write+0x19/0x25 > [] ext4_da_write_inline_data_begin+0x196/0x31c > [] ext4_da_write_begin+0x189/0x302 > [] ? trace_hardirqs_on+0xd/0xf > [] ? read_seqcount_begin.clone.1+0x9f/0xcc > [] generic_perform_write+0xc7/0x1c6 > [] ? mark_held_locks+0x59/0x77 > [] __generic_file_write_iter+0x17f/0x1c5 > [] ext4_file_write_iter+0x2a5/0x354 > [] ? file_start_write+0x2a/0x2c > [] ? bad_area_nosemaphore+0x13/0x15 > [] new_sync_write+0x8a/0xb2 > [] vfs_write+0xb5/0x14d > [] SyS_write+0x5c/0x8c > [] system_call_fastpath+0x12/0x17 > > Signed-off-by: Dmitry Monakhov This patch makes sense but I haven't been able to duplicate the failure. Maybe it's sensitive to the size of the scratch device, or some such? - Ted