[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <01ed765d-449d-fa5f-2f08-1b74e7f6a9c8@redhat.com>
Date: Wed, 1 Sep 2021 12:18:04 +0200
From: David Hildenbrand <david@...hat.com>
To: David Howells <dhowells@...hat.com>, torvalds@...ux-foundation.org,
Andrew Morton <akpm@...ux-foundation.org>,
Johannes Weiner <hannes@...xchg.org>
Cc: Matthew Wilcox <willy@...radead.org>,
Theodore Ts'o <tytso@....edu>,
Christoph Hellwig <hch@...radead.org>,
Alexander Viro <viro@...iv.linux.org.uk>,
Vlastimil Babka <vbabka@...e.cz>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
"Darrick J. Wong" <djwong@...nel.org>,
Dan Williams <dan.j.williams@...el.com>,
Jeff Layton <jlayton@...nel.org>, linux-mm@...ck.org,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: Folios: Can we resolve this please?
On 01.09.21 00:15, David Howells wrote:
> Hi Linus, Andrew, Johannes,
>
> Can we come to a quick resolution on folios? I'd really like this to be
> solved in this merge window if at all possible as I (and others) have stuff
> that will depend on and will conflict with Willy's folio work. It would be
> great to get this sorted one way or another.
>
> As I see it, there are three issues, I think, and I think they kind of go like
> this:
>
> (1) Johannes wants to get away from pages being used as the unit of memory
> currency and thinks that folios aren't helpful in this regard[1]. There
> seems to be some disagreement about where this is heading.
>
> (2) Linus isn't entirely keen on Willy's approach[2], with a bottom up
> approach hiding the page objects behind a new type from the pov of the
> filesystem, but would rather see the page struct stay the main API type
> and the changes be hidden transparently inside of that.
>
> I think from what Linus said, he may be in favour (if that's not too
> strong a word) of using a new type to make sure we don't miss the
> necessary changes[3].
>
> (3) Linus isn't in favour of the name 'folio' for the new type[2]. Various
> names have been bandied around and Linus seems okay with "pageset"[4],
> though it's already in minor(-ish) use[5][6]. Willy has an alternate
> patchset with "folio" changed to "pageset"[7].
>
> With regard to (1), I think the folio concept could be used in future to hide
> at least some of the paginess from filesystems.
>
> With regard to (2), I think a top-down approach won't work until and unless we
> wrap all accesses to struct page by filesystems (and device drivers) in
> wrapper functions - we need to stop filesystems fiddling with page internals
> because what page internals may mean may change.
>
> With regard to (3), I'm personally fine with the name "folio", as are other
> people[8][9][10][11], but I could also live with a conversion to "pageset".
>
> Is it possible to take the folios patchset as-is and just live with the name,
> or just take Willy's rename-job (although it hasn't had linux-next soak time
> yet)? Or is the approach fundamentally flawed and in need of redoing?
Whatever we do, it would be great to get it out of -next one way (merge)
or the other (drop) ASAP, as it's a lot of code churn, affecting various
subsystems.
But merging it in a (for some people) suboptimal state just to get it
out of -next might not necessarily be what we want.
--
Thanks,
David / dhildenb
Powered by blists - more mailing lists