Subject : sync-Regression in 22.214.171.124?
Submitter : Ralf Hildebrandt <Ralf.Hildebrandt@charite.de>
Date : 2009-01-27 9:35
References : http://marc.info/?l=linux-kernel&m=123304977706620&w=4
Notify-Also : Federico Cuello <firstname.lastname@example.org>
This entry is being used for tracking a regression from 2.6.28. Please don't
close it until the problem is fixed in the mainline.
Right now 126.96.36.199 doesn't seem to expose the same behaviour. I'm having an eye on this.
It's still happening to me in 188.8.131.52.
On Sunday 15 February 2009, Ralf Hildebrandt wrote:
> * Ralf Hildebrandt <Ralf.Hildebrandt@charite.de>:
> > > This patch seems good to me. If you would care to add a changelog and
> > > Signed-off-by: line, then we could get it merged?
> > >
> > > I am not too sure about this bug. I have reproduced a strange hang with
> > > ext4 (which does include sys_sync and write_cache_pages traces), and
> > > also turned up a lockdep report. Also, we haven't seen any reports of
> > > this problem on other filesystems. So it could be an ext4 bug.
> > >
> > > Your traces also have lots of tasks hung waiting for page lock. It is
> > > possible that wakeups get lost, which is fixed by this commit in
> > > mainline
> > > 777c6c5f1f6e757ae49ecca2ed72d6b1f523c007
> > >
> > > Which might also be your bug.
> > >
> > >
> > > Any chance you can test this patch (as well as the existing patches
> > > you are using to fix write_cache_pages?).
> > I could test 184.108.40.206
> Still there in 220.127.116.11 :(
This fix for this has landed in mainline post 2.6.29-rc5, as commit
2acf2c. The deadlock is technically not a regression but it was made
*much* more likely to show up because of commit 31a1266: ("mm:
write_cache_pages cyclic fix, which show up in 18.104.22.168").
Commit 3a4c68 in mainline backs up the change made in 31a1266, so you
probably won't see this much after 22.214.171.124 (when 3a4c68 was
backported to 2.6.28.y), but we should get commit 2acf2c pushed to
2.6.28.x and 2.6.27.y to completely solve the deadlock problem.
Closing, since it's fixed in the mainline.