Re: Crash with 3.8.3 and TuxOnIce

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 27, 2013 at 09:58:43PM +0000, Pedro Ribeiro wrote:
> Hi Dave (and others),
> 
> I've pretty much established the responsible: commit
> 437a255aa23766666aec78af63be4c253faa8d57
> (
> 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
> ).

Seems completely unrelated to the problem you saw.

> 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?

No.

> The only xfs-specific
> patch in ToI is below:
> 
> diff --git a/fs/xfs/xfs_trans_ail.c b/fs/xfs/xfs_trans_ail.c
> index 0eda725..55de808 100644
> --- a/fs/xfs/xfs_trans_ail.c
> +++ b/fs/xfs/xfs_trans_ail.c
> @@ -511,6 +511,7 @@ xfsaild(
>   struct xfs_ail *ailp = data;
>   long tout = 0; /* milliseconds */
> 
> + set_freezable();
>   current->flags |= PF_MEMALLOC;

We do not ever set the PF_NOFREEZE, so set_freezable() is a no-op.
If ToI has introduced new freeze API dependencies, then I'm not
going to try to understand or fix them.

>   while (!kthread_should_stop()) {
> 
> Looking at the code blindly, it appears to be similar to what goes on in
> other filesystems...

That loop has a call to try_to_freeze() in it, which is how such
kthreads are supposed to handle freezing. i.e. once they enter a
state in which they can freeze, they call try_to_freeze() and then
get moved to the refrigerator.

You need to talk to the ToI developers...

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs




[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux