Thread (161 messages) 161 messages, 27 authors, 2021-10-25

Re: [GIT PULL] Memory folios for v5.15

From: "Darrick J. Wong" <djwong@kernel.org>
Date: 2021-08-26 00:59:16
Also in: linux-fsdevel, lkml

On Wed, Aug 25, 2021 at 08:03:18AM -0400, Jeff Layton wrote:
On Wed, 2021-08-25 at 07:32 +0100, Christoph Hellwig wrote:
quoted
On Tue, Aug 24, 2021 at 03:44:48PM -0400, Theodore Ts'o wrote:
quoted
The problem is whether we use struct head_page, or folio, or mempages,
we're going to be subsystem users' faces.  And people who are using it
every day will eventually get used to anything, whether it's "folio"
or "xmoqax", we sould give a thought to newcomers to Linux file system
code.  If they see things like "read_folio()", they are going to be
far more confused than "read_pages()" or "read_mempages()".
Are they?  It's not like page isn't some randomly made up term
as well, just one that had a lot more time to spread.
Absolutely.  "folio" is no worse than "page", we've just had more time
to get used to "page".
I /like/ the name 'folio'.  My privileged education :P informed me (when
Matthew talked to me the very first time about this patchset) that it's
a wonderfully flexible word that describes both a collection of various
pages and a single large sheet of paper folded in half.  Or in the case
of x86, folded in half nine times.

That's *exactly* the usage that Matthew is proposing.

English already had a word ready for us to use, so let's use it.

--D

(Well, ok, the one thing I dislike is that my brain keeps typing out
'fileio' instead of 'folio', but it's still better than struct xmoqax or
remembering if we do camel_case or PotholeCase.)
quoted
quoted
So if someone sees "kmem_cache_alloc()", they can probably make a
guess what it means, and it's memorable once they learn it.
Similarly, something like "head_page", or "mempages" is going to a bit
more obvious to a kernel newbie.  So if we can make a tiny gesture
towards comprehensibility, it would be good to do so while it's still
easier to change the name.
All this sounds really weird to me.  I doubt there is any name that
nicely explains "structure used to manage arbitrary power of two
units of memory in the kernel" very well.  So I agree with willy here,
let's pick something short and not clumsy.  I initially found the folio
name a little strange, but working with it I got used to it quickly.
And all the other uggestions I've seen s far are significantly worse,
especially all the odd compounds with page in it.
Same here. Compound words are especially bad, as newbies will
continually have to look at whether it's "page_set" or "pageset".

-- 
Jeff Layton [off-list ref]
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help