xfs
[Top] [All Lists]

Re: [PATCH v3 13/18] xfs: update free inode record logic to support spar

To: Brian Foster <bfoster@xxxxxxxxxx>
Subject: Re: [PATCH v3 13/18] xfs: update free inode record logic to support sparse inode records
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon, 9 Feb 2015 09:33:17 +1100
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1423252385-3063-14-git-send-email-bfoster@xxxxxxxxxx>
References: <1423252385-3063-1-git-send-email-bfoster@xxxxxxxxxx> <1423252385-3063-14-git-send-email-bfoster@xxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Fri, Feb 06, 2015 at 02:53:00PM -0500, Brian Foster wrote:
> xfs_difree_inobt() uses logic in a couple places that assume inobt
> records refer to fully allocated chunks. Specifically, the use of
> mp->m_ialloc_inos can cause problems for inode chunks that are sparsely
> allocated. Sparse inode chunks can, by definition, define a smaller
> number of inodes than a full inode chunk.
> 
> Fix the logic that determines whether an inode record should be removed
> from the inobt to use the ir_free mask rather than ir_freecount.
> 
> Fix the agi counters modification to use ir_freecount to add the actual
> number of inodes freed rather than assuming a full inode chunk.
> 
> Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>

This should be moved to the start of the series, along with any
other code that does rec.ir_freecount checks to see if the chunk
has inodes in use or not.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

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