| To: | "Darrick J. Wong" <darrick.wong@xxxxxxxxxx> |
|---|---|
| Subject: | Re: block allocations for the refcount btree |
| From: | Christoph Hellwig <hch@xxxxxxxxxxxxx> |
| Date: | Wed, 10 Feb 2016 11:07:38 -0800 |
| Cc: | Dave Chinner <david@xxxxxxxxxxxxx>, xfs@xxxxxxxxxxx |
| Delivered-to: | xfs@xxxxxxxxxxx |
| In-reply-to: | <20160210095010.GC23904@xxxxxxxxxxxxxxxx> |
| References: | <20160210093011.GA19147@xxxxxxxxxxxxx> <20160210095010.GC23904@xxxxxxxxxxxxxxxx> |
| User-agent: | Mutt/1.5.24 (2015-08-30) |
On Wed, Feb 10, 2016 at 01:50:10AM -0800, Darrick J. Wong wrote: > That's odd... I'd have thought that the AG reservation would always be able > to handle a refcount btree expansion, since it calculates how many blocks > are needed to handle the worst case of 1 record per extent. There's also > a bug where we undercount the number of blocks already used, so it should > have an extra big reservation. > > OTOH I've seen occasional ENOSPCs in generic/186 and generic/168 too, so I > guess something's going wrong. Maybe the xfs_ag_resv* tracepoints can help? I'm not seeing an ENOSPC, I run into: [ 640.924891] XFS: Assertion failed: tp->t_blk_res_used <= tp->t_blk_res, file: fs/xfs/xfs_trans.c, line: 315 Which asserts that the current transaction is using up more blocks from its reservation than it reserved. The AG reservation seems to operate on a different level than that. |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH 2/2 v3] xfs_repair: new secondary superblock search method, Bill O'Donnell |
|---|---|
| Next by Date: | [LFS/MM TOPIC] fs reflink issues, fs online scrub/check, etc, Darrick J. Wong |
| Previous by Thread: | Re: block allocations for the refcount btree, Darrick J. Wong |
| Next by Thread: | Re: block allocations for the refcount btree, Dave Chinner |
| Indexes: | [Date] [Thread] [Top] [All Lists] |