[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200427122836.GD29705@bombadil.infradead.org>
Date: Mon, 27 Apr 2020 05:28:36 -0700
From: Matthew Wilcox <willy@...radead.org>
To: Shiyang Ruan <ruansy.fnst@...fujitsu.com>
Cc: linux-kernel@...r.kernel.org, linux-xfs@...r.kernel.org,
linux-nvdimm@...ts.01.org, linux-mm@...ck.org,
linux-fsdevel@...r.kernel.org, darrick.wong@...cle.com,
dan.j.williams@...el.com, david@...morbit.com, hch@....de,
rgoldwyn@...e.de, qi.fuli@...itsu.com, y-goto@...itsu.com
Subject: Re: [RFC PATCH 0/8] dax: Add a dax-rmap tree to support reflink
On Mon, Apr 27, 2020 at 04:47:42PM +0800, Shiyang Ruan wrote:
> This patchset is a try to resolve the shared 'page cache' problem for
> fsdax.
>
> In order to track multiple mappings and indexes on one page, I
> introduced a dax-rmap rb-tree to manage the relationship. A dax entry
> will be associated more than once if is shared. At the second time we
> associate this entry, we create this rb-tree and store its root in
> page->private(not used in fsdax). Insert (->mapping, ->index) when
> dax_associate_entry() and delete it when dax_disassociate_entry().
Do we really want to track all of this on a per-page basis? I would
have thought a per-extent basis was more useful. Essentially, create
a new address_space for each shared extent. Per page just seems like
a huge overhead.
Powered by blists - more mailing lists