Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

docs: Pull LKMM documentation into dev-tools book

Currently, LKMM docs are not included in any of kernel documentation
books.

Commit e40573a43d16 ("docs: put atomic*.txt and memory-barriers.txt
into the core-api book") covered plain-text docs under Documentation/
by using the "include::" directive along with the ":literal:" option.

As LKMM docs are not under Documentation/, the same approach would not
work due to the directive's restriction.

As a matter of fact, kernel documentation has an extended directive
by the name of "kernel-include::", which loosens such restriction and
accepts any files under the kernel source tree.

Rather than moving LKMM docs around, use the latter and pull them into
the dev-tools book next to KCSAN.

Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Cc: Paul E. McKenney <paulmck@kernel.org>
Acked-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <7ce84a93-5cbc-420e-894a-06a0372c52ab@gmail.com>

authored by

Akira Yokosawa and committed by
Jonathan Corbet
1e9ddbb2 9946f344

+192
+1
Documentation/dev-tools/index.rst
··· 29 29 ubsan 30 30 kmemleak 31 31 kcsan 32 + lkmm/index 32 33 kfence 33 34 kselftest 34 35 kunit/index
+11
Documentation/dev-tools/lkmm/docs/access-marking.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Access Marking 4 + -------------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/access-marking.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/access-marking.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/cheatsheet.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Cheatsheet 4 + ---------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/cheatsheet.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/cheatsheet.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/control-dependencies.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Control Dependencies 4 + -------------------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/control-dependencies.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/control-dependencies.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/explanation.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Explanation 4 + ----------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/explanation.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/explanation.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/glossary.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Glossary 4 + -------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/glossary.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/glossary.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/herd-representation.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + herd-representation 4 + ------------------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/herd-representation``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/herd-representation.txt 11 + :literal:
+21
Documentation/dev-tools/lkmm/docs/index.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Documentation 4 + ============= 5 + 6 + .. toctree:: 7 + :maxdepth: 1 8 + 9 + readme 10 + simple 11 + ordering 12 + litmus-tests 13 + locking 14 + recipes 15 + control-dependencies 16 + access-marking 17 + cheatsheet 18 + explanation 19 + herd-representation 20 + glossary 21 + references
+11
Documentation/dev-tools/lkmm/docs/litmus-tests.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Litmus Tests 4 + ------------ 5 + 6 + Literal include of ``tools/memory-model/Documentation/litmus-tests.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/litmus-tests.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/locking.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Locking 4 + ------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/locking.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/locking.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/ordering.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Ordering 4 + -------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/ordering.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/ordering.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/readme.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + README (for LKMM Documentation) 4 + ------------------------------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/README``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/README 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/recipes.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Recipes 4 + ------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/recipes.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/recipes.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/references.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + References 4 + ---------- 5 + 6 + Literal include of ``tools/memory-model/Documentation/references.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/references.txt 11 + :literal:
+11
Documentation/dev-tools/lkmm/docs/simple.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + Simple 4 + ------ 5 + 6 + Literal include of ``tools/memory-model/Documentation/simple.txt``. 7 + 8 + ------------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/Documentation/simple.txt 11 + :literal:
+15
Documentation/dev-tools/lkmm/index.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + ============================================ 4 + Linux Kernel Memory Consistency Model (LKMM) 5 + ============================================ 6 + 7 + This section literally renders documents under ``tools/memory-model/`` 8 + and ``tools/memory-model/Documentation/``, which are maintained in 9 + the *pure* plain text form. 10 + 11 + .. toctree:: 12 + :maxdepth: 2 13 + 14 + readme 15 + docs/index
+11
Documentation/dev-tools/lkmm/readme.rst
··· 1 + .. SPDX-License-Identifier: GPL-2.0 2 + 3 + README (for LKMM) 4 + ================= 5 + 6 + Literal include of ``tools/memory-model/README``. 7 + 8 + ------------------------------------------------------------ 9 + 10 + .. kernel-include:: tools/memory-model/README 11 + :literal:
+1
MAINTAINERS
··· 14151 14151 F: Documentation/atomic_bitops.txt 14152 14152 F: Documentation/atomic_t.txt 14153 14153 F: Documentation/core-api/refcount-vs-atomic.rst 14154 + F: Documentation/dev-tools/lkmm/ 14154 14155 F: Documentation/litmus-tests/ 14155 14156 F: Documentation/memory-barriers.txt 14156 14157 F: tools/memory-model/