Re: [patch 1/7] cpusets: add dirty map to struct address_space

Peter Zijlstra
2008-10-30T08:38:18Z

On Tue, 2008-10-28 at 18:13 -0700, David Rientjes wrote:
> On Tue, 28 Oct 2008, David Rientjes wrote:
>
> > Yeah, if we don't serialize with tree_lock then we'll need to protect the
> > attachment of mapping->dirty_nodes with a new spinlock in struct
> > address_space (and only for configs where MAX_NUMNODES > BITS_PER_LONG).
> > That locking overhead is negligible when mapping->dirty_nodes is non-NULL
> > since there's no requirement to protect the setting of the node in the
> > nodemask.
> >
> > Are your concurrent pagecache patches in the latest mmotm? If so, I can
> > rebase this entire patchset off that.
>
> We're still taking mapping->tree_lock in both __set_page_dirty() and
> __set_page_dirty_nobuffers() in today's mmotm.
>
> When tree_lock is removed with your patchset, we can add a spinlock to
> protect mapping->dirty_nodes when MAX_NUMNODES > BITS_PER_LONG.
>
> Would you like to fold this patch into your series (which assumes we're
> not taking mapping->tree_lock in either of the two callers above)?

Thanks!, I was working on cleaning up the patches to submit again
soonish.