public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Follow-up on Linux-kernel code accessibility
@ 2025-12-18 19:49 Paul E. McKenney
  2025-12-18 22:09 ` David Laight
                   ` (2 more replies)
  0 siblings, 3 replies; 58+ messages in thread
From: Paul E. McKenney @ 2025-12-18 19:49 UTC (permalink / raw)
  To: Gabriele Paoloni, Steven Rostedt, Kate Stewart, Chuck Wolber,
	Julia.Lawall@inria.fr, Dmitry Vyukov, Mark Rutland,
	Thomas Gleixner, Lorenzo Stoakes, Shuah Khan
  Cc: linux-kernel

Hello!

Just following up on some Linux Plumbers Conference discussions on the
accessibility of Linux-kernel code to people ranging from novices to
the developers and maintainers of the code in question.  I am adding
Lorenze on CC not because he was involved with these discussions (at
least as far as I know), but rather because I am using some of his work
in my follow-up analysis.

The Linux kernel's mm system weighs in at about 200KLoC, and Lorenzo
wrote a book on its design that weighs in at about 1300 pages, or
about 150 LoC/page.  This suggests that the Linux-kernel scheduler,
which weighs in at about 70KLoC and has similar heuristics/workload
challenges as does mm, would require a 430-page textbook to provide a
similar level of design detail.  By this methodology, RCU would require
"only" 190 pages, presumably substituting its unfamiliarity for sched's
and mm's deeply heuristic and workload-dependent nature.

Sadly, this data does not support the hypothesis that we can create
comments that will provide understanding to people taking random dives
into the Linux kernel's source code.  In contrast to code that is closely
associated with a specific type of mechanical device, Linux-kernel
code requires the reader to possess a great deal of abstract and global
conceptual/workload information.

This is not to say that the Linux kernel's internal documentation
(including its comments) cannot or should not be improved.
They clearly should.  It instead means that a necessary part of any
instant-understanding methodology for the Linux kernel include active
software assistance, for example, Anthropic's Claude LLM or IBM's (rather
older but less readily accessible) Analysis and Renovation Catalyst (ARC).
I am not denigrating other options, but rather restricting myself to
tools with which I have personal experience.

And one reason for continued but reasonable emphasis on internal
documentation, including comments, is that the aforementioned tools
ingest that documentation.  ;-)

Thoughts?

And in the meantime, happy holidays for those celebrating them!

							Thanx, Paul

^ permalink raw reply	[flat|nested] 58+ messages in thread

end of thread, other threads:[~2026-01-13 13:04 UTC | newest]

Thread overview: 58+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-18 19:49 Follow-up on Linux-kernel code accessibility Paul E. McKenney
2025-12-18 22:09 ` David Laight
2025-12-19  0:20   ` Paul E. McKenney
2025-12-19  6:51 ` Julia Lawall
2025-12-19 17:09   ` Theodore Tso
2025-12-19 17:59     ` Sasha Levin
2025-12-19 18:28       ` Steven Rostedt
2025-12-20  0:36         ` Paul E. McKenney
2025-12-22 15:42           ` Steven Rostedt
2025-12-23 23:46             ` Paul E. McKenney
2025-12-24 14:11               ` Steven Rostedt
2025-12-25 15:03                 ` Theodore Tso
2025-12-25 18:22                   ` Paul E. McKenney
2025-12-26 16:48                   ` Steven Rostedt
2025-12-26 18:44                     ` Paul E. McKenney
2025-12-26 19:22                     ` Theodore Tso
2025-12-26 20:35                       ` Steven Rostedt
2025-12-27  1:04                       ` Paul E. McKenney
2025-12-27  6:16                         ` Julia Lawall
2025-12-27 23:28                           ` Paul E. McKenney
2025-12-27 23:32                             ` Julia Lawall
2025-12-28  1:26                               ` Paul E. McKenney
2025-12-28  1:48                                 ` Dr. David Alan Gilbert
2025-12-28  5:16                                   ` Paul E. McKenney
2025-12-28  9:36                                     ` Julia Lawall
2025-12-29 15:40                                       ` Steven Rostedt
2025-12-29 16:16                                         ` Paul E. McKenney
2025-12-29 17:02                                           ` Dr. David Alan Gilbert
2025-12-29 17:37                                             ` Paul E. McKenney
2025-12-29 18:10                                               ` Dr. David Alan Gilbert
2025-12-29 18:59                                                 ` Paul E. McKenney
2025-12-29 20:35                                                   ` Steven Rostedt
2025-12-29 22:05                                                     ` Dr. David Alan Gilbert
2026-01-09  1:35                                                       ` Paul E. McKenney
2026-01-09  1:34                                                     ` Paul E. McKenney
2026-01-09 14:58                                                       ` Steven Rostedt
2026-01-09 18:31                                                         ` Paul E. McKenney
2026-01-11  3:30                                                         ` Theodore Tso
2026-01-11 17:11                                                           ` Steven Rostedt
2026-01-12  5:06                                                             ` Paul E. McKenney
2026-01-12  7:05                                                               ` Julia Lawall
2026-01-12 16:57                                                                 ` Paul E. McKenney
2025-12-29 23:50                                                   ` Theodore Tso
2025-12-30  0:19                                                     ` Steven Rostedt
2025-12-30  0:34                                                       ` Steven Rostedt
2026-01-09  2:23                                                     ` Paul E. McKenney
2025-12-28 12:46                                     ` Dr. David Alan Gilbert
2025-12-29  0:03                                       ` Paul E. McKenney
2025-12-25 18:18                 ` Paul E. McKenney
2025-12-26 16:51                   ` Steven Rostedt
2025-12-26 18:36                     ` Paul E. McKenney
2025-12-19 21:05     ` Chris Mason
2025-12-20  4:00       ` Theodore Tso
2026-01-06 18:08       ` Lorenzo Stoakes
2026-01-13 13:03         ` Chris Mason
2025-12-20  0:31   ` Paul E. McKenney
2026-01-06 18:05 ` Lorenzo Stoakes
2026-01-09  1:40   ` Paul E. McKenney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox