Re: [PATCH 5/6] [XFS] Replace per-ag array with a radix tree

Christoph Hellwig
2009-12-11T11:42:54Z

On Fri, Dec 11, 2009 at 11:43:53AM +1100, Dave Chinner wrote:
> Filestreams keeps reference counts and state on the per-ag
> structure. If it was to be re-allocated, then all the references had
> to be dropped before reallocation, hence the flush. Now there is
> no reallocation, I don't think we need the flush anymore. Removing
> it also means updating comments in the filestream code, so I was
> going to do all that in a subsequent patch....

Ok.

> > Just assign it to error first and then later to mp->m_maxagi to avoid
> > the cast?
>
> Actually, to avoid all such sign issues, I think that mp->m_maxagi
> sho???ld be assigned in xfs_initialize_perag() and it only returns
> error or success. Does that make sense?

It does make sense. Although in the growfs case we currently store the
maxagi count in a local variable and only set it later. That might need
some auditing.

> Agreed - mp->m_growlock already does this and this patch series did
> not touch it at all so it should still work ;)

Doh, indeed.