[PATCH v3 0/7] Rewrite the top-level index.rst

Jonathan Corbet posted 7 patches 3 years, 6 months ago
Documentation/conf.py                         |   3 +-
.../{ => core-api}/asm-annotations.rst        |   7 +-
Documentation/core-api/index.rst              |   4 +
.../core-api/wrappers/atomic_bitops.rst       |  18 ++
Documentation/core-api/wrappers/atomic_t.rst  |  19 +++
.../core-api/wrappers/memory-barriers.rst     |  18 ++
Documentation/index.rst                       | 156 ++++++------------
Documentation/process/index.rst               |   1 +
Documentation/staging/index.rst               |  42 -----
Documentation/subsystem-apis.rst              |  58 +++++++
scripts/checkpatch.pl                         |   2 +-
11 files changed, 175 insertions(+), 153 deletions(-)
rename Documentation/{ => core-api}/asm-annotations.rst (97%)
create mode 100644 Documentation/core-api/wrappers/atomic_bitops.rst
create mode 100644 Documentation/core-api/wrappers/atomic_t.rst
create mode 100644 Documentation/core-api/wrappers/memory-barriers.rst
create mode 100644 Documentation/subsystem-apis.rst
[PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Jonathan Corbet 3 years, 6 months ago
The top-level index.rst file is the entry point for the kernel's
documentation, especially for readers of the HTML output.  It is currently
a mess containing everything we thought to throw in there.  Firefox says it
would require 26 pages of paper to print it.  That is not a user-friendly
introduction.

This series aims to improve our documentation entry point with a focus on
rewriting index.rst.  The result is, IMO, simpler and more approachable.
For anybody who wants to see the rendered results without building the
docs, have a look at:

  https://static.lwn.net/kerneldoc/

This time around I've rendered the pages using the "Read The Docs" theme,
since that's what everybody will get by default.  That theme ignores the
directives regarding the left column, so the results are not as good there.
I have a series proposing a default-theme change in the works, but that's a
separate topic.

This is only a beginning; I think this kind of organizational effort has to
be pushed down into the lower layers of the docs tree itself.  But one has
to start somewhere.

CHANGES from v2: now with less sloppiness.  I've tried to respond to all of
the review comments.  scripts/checkpatch.pl has been updated to match the
new location of asm-annotations.rst.  There is also now a link to the man
pages in the user-oriented documentation section.

CHANGES from v1: I've tried to address the comments from v1, further
cleaning up the front page.  I've added the "reporting issues" and "kernel
testing" documents there, and done a bit of cleanup.  There is plenty more
yet to be done.


Jonathan Corbet (7):
  docs: promote the title of process/index.rst
  docs: Rewrite the front page
  docs: reconfigure the HTML left column
  docs: remove some index.rst cruft
  docs: move asm-annotations.rst into core-api
  docs: put atomic*.txt and memory-barriers.txt into the core-api book
  docs: add a man-pages link to the front page

 Documentation/conf.py                         |   3 +-
 .../{ => core-api}/asm-annotations.rst        |   7 +-
 Documentation/core-api/index.rst              |   4 +
 .../core-api/wrappers/atomic_bitops.rst       |  18 ++
 Documentation/core-api/wrappers/atomic_t.rst  |  19 +++
 .../core-api/wrappers/memory-barriers.rst     |  18 ++
 Documentation/index.rst                       | 156 ++++++------------
 Documentation/process/index.rst               |   1 +
 Documentation/staging/index.rst               |  42 -----
 Documentation/subsystem-apis.rst              |  58 +++++++
 scripts/checkpatch.pl                         |   2 +-
 11 files changed, 175 insertions(+), 153 deletions(-)
 rename Documentation/{ => core-api}/asm-annotations.rst (97%)
 create mode 100644 Documentation/core-api/wrappers/atomic_bitops.rst
 create mode 100644 Documentation/core-api/wrappers/atomic_t.rst
 create mode 100644 Documentation/core-api/wrappers/memory-barriers.rst
 create mode 100644 Documentation/subsystem-apis.rst

-- 
2.37.2
Re: [PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Jonathan Corbet 3 years, 6 months ago
Jonathan Corbet <corbet@lwn.net> writes:

> The top-level index.rst file is the entry point for the kernel's
> documentation, especially for readers of the HTML output.  It is currently
> a mess containing everything we thought to throw in there.  Firefox says it
> would require 26 pages of paper to print it.  That is not a user-friendly
> introduction.
>
> This series aims to improve our documentation entry point with a focus on
> rewriting index.rst.  The result is, IMO, simpler and more approachable.
> For anybody who wants to see the rendered results without building the
> docs, have a look at:
>
>   https://static.lwn.net/kerneldoc/

So I think I'll go ahead and drop this into docs-next shortly.  Thanks
to everybody who has commented.

This, of course, has the potential to create conflicts with other 6.1
work that touches Documentation/index.rst.  Amazingly, as far as I can
tell, there is only one linux-next commit touching that file - the
addition of the Rust docs.  We'll want to be sure that doesn't get lost
during the merge window.  I'll be sure to include a suitable heads-up in
my pull request.

Thanks,

jon
Re: [PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Miguel Ojeda 3 years, 6 months ago
On Thu, Sep 29, 2022 at 5:34 PM Jonathan Corbet <corbet@lwn.net> wrote:
>
> So I think I'll go ahead and drop this into docs-next shortly.  Thanks
> to everybody who has commented.
>
> This, of course, has the potential to create conflicts with other 6.1
> work that touches Documentation/index.rst.  Amazingly, as far as I can
> tell, there is only one linux-next commit touching that file - the
> addition of the Rust docs.  We'll want to be sure that doesn't get lost
> during the merge window.  I'll be sure to include a suitable heads-up in
> my pull request.

Thanks for the Cc -- I had not seen the series yet, but it looks way better!

Cheers,
Miguel
Re: [PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Kees Cook 3 years, 6 months ago
On Thu, Sep 29, 2022 at 09:34:18AM -0600, Jonathan Corbet wrote:
> Jonathan Corbet <corbet@lwn.net> writes:
> 
> > The top-level index.rst file is the entry point for the kernel's
> > documentation, especially for readers of the HTML output.  It is currently
> > a mess containing everything we thought to throw in there.  Firefox says it
> > would require 26 pages of paper to print it.  That is not a user-friendly
> > introduction.
> >
> > This series aims to improve our documentation entry point with a focus on
> > rewriting index.rst.  The result is, IMO, simpler and more approachable.
> > For anybody who wants to see the rendered results without building the
> > docs, have a look at:
> >
> >   https://static.lwn.net/kerneldoc/
> 
> So I think I'll go ahead and drop this into docs-next shortly.  Thanks
> to everybody who has commented.
> 
> This, of course, has the potential to create conflicts with other 6.1
> work that touches Documentation/index.rst.  Amazingly, as far as I can
> tell, there is only one linux-next commit touching that file - the
> addition of the Rust docs.  We'll want to be sure that doesn't get lost
> during the merge window.  I'll be sure to include a suitable heads-up in
> my pull request.

I can add a note in my PR of Rust too -- how should I suggest it be
resolved?

-- 
Kees Cook
Re: [PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Jonathan Corbet 3 years, 6 months ago
Kees Cook <keescook@chromium.org> writes:

> On Thu, Sep 29, 2022 at 09:34:18AM -0600, Jonathan Corbet wrote:
>> Jonathan Corbet <corbet@lwn.net> writes:
>> 
>> > The top-level index.rst file is the entry point for the kernel's
>> > documentation, especially for readers of the HTML output.  It is currently
>> > a mess containing everything we thought to throw in there.  Firefox says it
>> > would require 26 pages of paper to print it.  That is not a user-friendly
>> > introduction.
>> >
>> > This series aims to improve our documentation entry point with a focus on
>> > rewriting index.rst.  The result is, IMO, simpler and more approachable.
>> > For anybody who wants to see the rendered results without building the
>> > docs, have a look at:
>> >
>> >   https://static.lwn.net/kerneldoc/
>> 
>> So I think I'll go ahead and drop this into docs-next shortly.  Thanks
>> to everybody who has commented.
>> 
>> This, of course, has the potential to create conflicts with other 6.1
>> work that touches Documentation/index.rst.  Amazingly, as far as I can
>> tell, there is only one linux-next commit touching that file - the
>> addition of the Rust docs.  We'll want to be sure that doesn't get lost
>> during the merge window.  I'll be sure to include a suitable heads-up in
>> my pull request.
>
> I can add a note in my PR of Rust too -- how should I suggest it be
> resolved?

The Rust documentation change to Documentation/index.rst is simple
enough:

> diff --git a/Documentation/index.rst b/Documentation/index.rst
> index 4737c18c97ff..00722aa20cd7 100644
> --- a/Documentation/index.rst
> +++ b/Documentation/index.rst
> @@ -82,6 +82,7 @@ merged much easier.
>     maintainer/index
>     fault-injection/index
>     livepatch/index
> +   rust/index

The resolution should take the docs-next version of the file, but add
that line after "livepatch/index" in its new location.

Thanks,

jon
Re: [PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Jonathan Corbet 3 years, 6 months ago
[Sending a copy to the linux-next folks as well in the hope that it
helps when the conflict shows up there.]

Jonathan Corbet <corbet@lwn.net> writes:

> Kees Cook <keescook@chromium.org> writes:
>
>> On Thu, Sep 29, 2022 at 09:34:18AM -0600, Jonathan Corbet wrote:
>>> Jonathan Corbet <corbet@lwn.net> writes:
>>> 
>>> > The top-level index.rst file is the entry point for the kernel's
>>> > documentation, especially for readers of the HTML output.  It is currently
>>> > a mess containing everything we thought to throw in there.  Firefox says it
>>> > would require 26 pages of paper to print it.  That is not a user-friendly
>>> > introduction.
>>> >
>>> > This series aims to improve our documentation entry point with a focus on
>>> > rewriting index.rst.  The result is, IMO, simpler and more approachable.
>>> > For anybody who wants to see the rendered results without building the
>>> > docs, have a look at:
>>> >
>>> >   https://static.lwn.net/kerneldoc/
>>> 
>>> So I think I'll go ahead and drop this into docs-next shortly.  Thanks
>>> to everybody who has commented.
>>> 
>>> This, of course, has the potential to create conflicts with other 6.1
>>> work that touches Documentation/index.rst.  Amazingly, as far as I can
>>> tell, there is only one linux-next commit touching that file - the
>>> addition of the Rust docs.  We'll want to be sure that doesn't get lost
>>> during the merge window.  I'll be sure to include a suitable heads-up in
>>> my pull request.
>>
>> I can add a note in my PR of Rust too -- how should I suggest it be
>> resolved?
>
> The Rust documentation change to Documentation/index.rst is simple
> enough:
>
>> diff --git a/Documentation/index.rst b/Documentation/index.rst
>> index 4737c18c97ff..00722aa20cd7 100644
>> --- a/Documentation/index.rst
>> +++ b/Documentation/index.rst
>> @@ -82,6 +82,7 @@ merged much easier.
>>     maintainer/index
>>     fault-injection/index
>>     livepatch/index
>> +   rust/index
>
> The resolution should take the docs-next version of the file, but add
> that line after "livepatch/index" in its new location.
>
> Thanks,
>
> jon
Re: [PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Randy Dunlap 3 years, 6 months ago

On 9/27/22 09:05, Jonathan Corbet wrote:
> The top-level index.rst file is the entry point for the kernel's
> documentation, especially for readers of the HTML output.  It is currently
> a mess containing everything we thought to throw in there.  Firefox says it
> would require 26 pages of paper to print it.  That is not a user-friendly
> introduction.
> 
> This series aims to improve our documentation entry point with a focus on
> rewriting index.rst.  The result is, IMO, simpler and more approachable.
> For anybody who wants to see the rendered results without building the
> docs, have a look at:
> 
>   https://static.lwn.net/kerneldoc/

LGTM. Thanks.

for the series:
Acked-by: Randy Dunlap <rdunlap@infradead.org>

> This time around I've rendered the pages using the "Read The Docs" theme,
> since that's what everybody will get by default.  That theme ignores the
> directives regarding the left column, so the results are not as good there.
> I have a series proposing a default-theme change in the works, but that's a
> separate topic.
> 
> This is only a beginning; I think this kind of organizational effort has to
> be pushed down into the lower layers of the docs tree itself.  But one has
> to start somewhere.
> 
> CHANGES from v2: now with less sloppiness.  I've tried to respond to all of
> the review comments.  scripts/checkpatch.pl has been updated to match the
> new location of asm-annotations.rst.  There is also now a link to the man
> pages in the user-oriented documentation section.
> 
> CHANGES from v1: I've tried to address the comments from v1, further
> cleaning up the front page.  I've added the "reporting issues" and "kernel
> testing" documents there, and done a bit of cleanup.  There is plenty more
> yet to be done.


-- 
~Randy
Re: [PATCH v3 0/7] Rewrite the top-level index.rst
Posted by Joe Perches 3 years, 6 months ago
On Tue, 2022-09-27 at 10:05 -0600, Jonathan Corbet wrote:
> The top-level index.rst file is the entry point for the kernel's
> documentation, especially for readers of the HTML output.  It is currently
> a mess containing everything we thought to throw in there.  Firefox says it
> would require 26 pages of paper to print it.  That is not a user-friendly
> introduction.
> 
> This series aims to improve our documentation entry point with a focus on
> rewriting index.rst.  The result is, IMO, simpler and more approachable.
> For anybody who wants to see the rendered results without building the
> docs, have a look at:
> 
>   https://static.lwn.net/kerneldoc/

Seems better and sensible enough for now, thanks.