<div dir="ltr">Hi Dave (and others),<div><br></div><div style>I've pretty much established the responsible: commit <span style="color:rgb(0,0,0);font-size:13px">437a255aa23766666aec78af63be4c253faa8d57 (</span><a href="http://git.kernel.org/cgit/linux/kernel/git/stable/stable-queue.git/tree/releases/3.7.2/xfs-fix-direct-io-nested-transaction-deadlock.patch?id=HEAD">http://git.kernel.org/cgit/linux/kernel/git/stable/stable-queue.git/tree/releases/3.7.2/xfs-fix-direct-io-nested-transaction-deadlock.patch?id=HEAD</a>).</div>
<div style><br></div><div style>Without this patch, the computer does not lock up in hibernate. So I understand that this is most likely a bug in ToI, not in xfs. Does this give you a better idea of how to solve the problem? The only xfs-specific patch in ToI is below:</div>
<div style><br></div><div style><div>diff --git a/fs/xfs/xfs_trans_ail.c b/fs/xfs/xfs_trans_ail.c</div><div>index 0eda725..55de808 100644</div><div>--- a/fs/xfs/xfs_trans_ail.c</div><div>+++ b/fs/xfs/xfs_trans_ail.c</div>
<div>@@ -511,6 +511,7 @@ xfsaild(</div><div> <span class="" style="white-space:pre"> </span>struct xfs_ail<span class="" style="white-space:pre"> </span>*ailp = data;</div><div> <span class="" style="white-space:pre"> </span>long<span class="" style="white-space:pre"> </span>tout = 0;<span class="" style="white-space:pre"> </span>/* milliseconds */</div>
<div> </div><div>+<span class="" style="white-space:pre"> </span>set_freezable();</div><div> <span class="" style="white-space:pre"> </span>current->flags |= PF_MEMALLOC;</div><div> </div><div> <span class="" style="white-space:pre"> </span>while (!kthread_should_stop()) {</div>
<div><br></div><div style>Looking at the code blindly, it appears to be similar to what goes on in other filesystems...</div><div style><br></div><div style>Regards,</div><div style>Pedro</div></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">On 21 March 2013 17:45, Pedro Ribeiro <span dir="ltr"><<a href="mailto:pedrib@gmail.com" target="_blank">pedrib@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div class="h5">On 21 March 2013 01:01, Dave Chinner <span dir="ltr"><<a href="mailto:david@fromorbit.com" target="_blank">david@fromorbit.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>On Wed, Mar 20, 2013 at 06:01:35PM +0000, Pedro Ribeiro wrote:<br>
> Thanks for the answer Dave.<br>
><br>
> Yes I would definitely say it's a ToI bug that perhaps has been dormant so<br>
> far. Unfortunately the ToI developer is very busy at the moment, so I will<br>
> have to debug and fix it myself.<br>
> This problem did not occur with 3.7 and the ToI code did not change.<br>
><br>
> Do you have any idea where I can start looking for the XFS change in 3.8<br>
> that triggered this behaviour in ToI? Or maybe it was a VFS change?<br>
<br>
</div>It's almost certainly an XFS change that triggered it, but it<br>
indicates (once again) that the hibernate code is simply not<br>
quiescing filesystems properly (i.e. by freezing them). The work<br>
that caused this problem is stopped by the filesystem when it<br>
is frozen, and started again when it is thawed...<br>
<div><br>
> PS: the email definitely bounced back, most likely because imageshack is<br>
> blocked on the sgi server:<br>
><br>
> Technical details of permanent failure:<br>
> Google tried to deliver your message, but it was rejected by the server for<br>
> the recipient domain <a href="http://oss.sgi.com" target="_blank">oss.sgi.com</a> by <a href="http://cuda-allmx.sgi.com" target="_blank">cuda-allmx.sgi.com</a>. [192.48.176.16].<br>
><br>
> The error that the other server returned was:<br>
> 554 rejecting banned content<br>
<br>
</div>IOWs, a stupid spam filter.<br>
<br>
I'll see if I can get this fixed.<br>
<div><div><br>
Cheers,<br>
<br>
Dave.<br>
--<br>
Dave Chinner<br>
<a href="mailto:david@fromorbit.com" target="_blank">david@fromorbit.com</a></div></div></blockquote><div><br></div></div></div><div>Actually I've nailed it down to a commit between 3.7.1 and 3.7.10. I'll do some git bisection and come back with the results.</div>
<div><br></div><div>Regarding ToI and filesystem freezing, I guess I need to start delving into the code to see if I can fix it - long but fun journey ahead I guess.</div><div><br></div><div>Regards,</div><div>Pedro </div>
</div><br></div></div>
</blockquote></div><br></div>