On Fri, Jul 01, 2016 at 11:09:50AM +0200, Jan Kara wrote: > But it is not safe - the bio contains pages, those pages have PageWriteback > set and if the inode is part of the running transaction, > ext4_journal_stop() will wait for transaction commit which will wait for > all outstanding writeback on the inode, which will deadlock on those pages > which are part of our unsubmitted bio. So the ordering really has to be the > way it is... So to be clear. the issue is that PageWriteback won't get cleared until we potentially do a uninit->init conversion, and this is what requires taking a transaction handle leading to the other half of the deadlock? ... and it's probably not safe to clear the PageWriteback early in the bio completion callback function, isn't it. Hmm.... - Ted -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html