All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Rapoport <rppt@kernel.org>
To: Matthew Wilcox <willy@infradead.org>
Cc: lsf-pc@lists.linux-foundation.org, linux-mm@kvack.org
Subject: Re: [LSF/MM TOPIC] mm documentation
Date: Fri, 21 May 2021 11:36:11 +0300	[thread overview]
Message-ID: <YKdw+5jW653ripVE@kernel.org> (raw)
In-Reply-To: <YKZv3CUcfx+qBCPw@casper.infradead.org>

On Thu, May 20, 2021 at 03:19:08PM +0100, Matthew Wilcox wrote:
> On Thu, May 20, 2021 at 11:56:09AM +0300, Mike Rapoport wrote:
> > The mm documentation is, well, not entirely up to date. We can opt for
> > dropping the outdated parts, which would generate a nice negative
> > diffstat, but identifying the outdated documentation requires nearly
> > as much effort as updating it, so I think that making and keeping
> > the docs up to date would be a better option.
> > 
> > I'd like to discuss what can be done process-wise to improve the
> > situation.
> > 
> > Some points I had in mind:
> > 
> > * Pay more attention to docs during review
> > * Set an expectation level for docs accompanying a changeset
> > * Spend some cycles to review and update the existing docs
> > * Spend some more cycles to add new documentation
> > * Participate in prorams like Google Season of Docs
> > 
> > I'd appreciate a discussion about how we can improve the existing memory
> > management documentation so that a reader can get a coherent view of it,
> > what are the gaps (although they are too many), and what would be the best
> > way to close these gaps.
> 
> I think we have four target audiences for mm documentation,
> 
>  - Sysadmins/user space programmers who are trying to make their system
>    perform well.  They need documentation of the
>    proc/sys/cmdline/... parameters that the MM pays attention to.

I'd say this part needs some love. Just a few weeks ago we've discussed how
/proc/meminfo description is outdated and there are more examples.
Besides, this is probably the most important part to keep up to date.

>  - Kernel programmers who are not (and do not wish to be) MM developers.
>    Filesystem developers, device driver developers, networking
>    developers.  They need kernel-doc for our exported functions and
>    advice for when to use and not use particular functions/flags.
>  - Programmers who want to "get started" in the MM area.  They may or
>    may not be familiar with Linux internals (perhaps they're moving from
>    another kernel, perhaps their experience is with some other part
>    of Linux; perhaps they have no experience at all).  I think these
>    people are probably well served by Mel's book, even if it is a few
>    years old now.

Mel's book is definitely an excellent starting point, but I afraid its age
is starting to show. As it was written mostly about 2.4 with some bits
about 2.6, there are lot of details that are missing in the book. Some are
probably less important because the concept didn't change much (e.g. page
table management), but others have considerable effect on our code (e.g
migration, compaction, THP).

>  - Each other.  The MM is huge these days, and I certainly don't
>    understand how it all interacts with itself.  I think we actually do
>    a pretty good job of talking to each other and writing commit messages.

IMHO, there is a fifth group: arch developers. I think it is important to
have documentation of what core mm expects from an architecture and what is
the expected semantics of various low level functions architectures supply.
 
> I think it's really the second group where we do the worst job of
> documentation, but I may be biased.  It's certainly where I'm focusing
> my documentation efforts.

I'm not sure it's the worst, but certainly along with the first group it's
the most important part.

-- 
Sincerely yours,
Mike.


  reply	other threads:[~2021-05-21  8:36 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-20  8:56 [LSF/MM TOPIC] mm documentation Mike Rapoport
2021-05-20 14:19 ` Matthew Wilcox
2021-05-21  8:36   ` Mike Rapoport [this message]
2021-05-25  7:04     ` Souptick Joarder
  -- strict thread matches above, loose matches on Subject: below --
2019-01-28  7:04 [LSF/MM TOPIC]: " Mike Rapoport
2019-02-22 13:59 ` Jonathan Cameron
     [not found] <20180130105237.GB7201@rapoport-lnx>
2018-01-30 10:54 ` [LSF/MM TOPIC] " Mike Rapoport
2018-01-30 11:50   ` Michal Hocko
2018-01-30 12:54     ` Mike Rapoport
2018-01-30 13:41       ` Michal Hocko
2018-01-30 14:28         ` Mike Rapoport
2018-01-30 17:32           ` Randy Dunlap
2018-01-31 10:56             ` Mike Rapoport
2018-01-30 17:35           ` James Bottomley
2018-01-31  2:38           ` Matthew Wilcox
2018-01-31  9:00             ` Michal Hocko
2018-01-31 14:59               ` Mike Rapoport

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YKdw+5jW653ripVE@kernel.org \
    --to=rppt@kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lsf-pc@lists.linux-foundation.org \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.