xfs
[Top] [All Lists]

Re: BUG: Internal error xfs_trans_cancel at line 984 of file fs/xfs/xfs_

To: Eryu Guan <eguan@xxxxxxxxxx>
Subject: Re: BUG: Internal error xfs_trans_cancel at line 984 of file fs/xfs/xfs_trans.c
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Fri, 2 Sep 2016 07:46:17 +1000
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20160901103955.GD27776@xxxxxxxxxxxxxxxxxxxxxxxx>
References: <20160829103754.GH27776@xxxxxxxxxxxxxxxxxxxxxxxx> <20160901103955.GD27776@xxxxxxxxxxxxxxxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Thu, Sep 01, 2016 at 06:39:55PM +0800, Eryu Guan wrote:
> On Mon, Aug 29, 2016 at 06:37:54PM +0800, Eryu Guan wrote:
> > Hi,
> > 
> > I've hit an XFS internal error then filesystem shutdown with 4.8-rc3
> > kernel but not with 4.8-rc2
> > 
> [snip]
> >
> > So it's likely a regression introduced in 4.8-rc3, and my bisect test
> > pointed to commit 0af32fb468b4 ("xfs: fix bogus space reservation in
> > xfs_iomap_write_allocate").
> 
> This might be buried in the report, I've bisected this down to
> 
> commit 0af32fb468b4a4434dd759d68611763658650b59
> Author: Christoph Hellwig <hch@xxxxxx>
> Date:   Wed Aug 17 08:30:28 2016 +1000
> 
>     xfs: fix bogus space reservation in xfs_iomap_write_allocate

*nod*. I did notice that - it's what I based my previous "this is
what I think it causing the warning" email on. i.e. we're dirtying a
AGF/AGFL to update the freelist, then finding we don't have space in
the AG for the data allocation, then we ENOSPC and cancel a dirty
transaction.

I'm not going to back this change out right now, because it does fix
other, much easier to hit issues. I think it has probably uncovered
another "off-by-one" corner case in the "can we use the AG"
calculations, so when I get a chance I'll look through the code
and see what I can find. A faster reproducer would make that a lot
easier, so if you manage to find one, I woul dbe very helpful.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>