Hi Christoph, On 08/26/2011 04:50 PM, Christoph Hellwig wrote: > On Fri, Aug 26, 2011 at 06:44:03PM +1000, Dave Chinner wrote: >> While the lockdep report is false positive, I agree that your >> change is the right fix to make - the IO completions are already >> queued on the workqueue, so they don't need to be flushed to get >> them to complete. All that needs to be done is call >> ext4_ioend_wait() for them to complete, and that gets rid of the >> i_mutex altogether. (*) > > The really correct fix is to stop using the ioend wait like I did > in my pending series for XFS. The only thing preventing ext4 from > doing that is that it marks pages uptodate from irq context, > before finishing the ioends. This has a lot of nasty implications > as the the page might be marked uptodate without actually having > that state on disk. yeah, the DIO read on a buffer write file issue is also another side effect of it.[1] So could you please talk a little more about how xfs handle it now? [1] http://www.spinics.net/lists/linux-ext4/msg27139.html Thanks Tao -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html