Skip to content

Commit 530d4c0

Browse files
rppttorvalds
authored andcommitted
docs/boot-time-mm: remove bootmem documentation
Link: http://lkml.kernel.org/r/1536927045-23536-31-git-send-email-rppt@linux.vnet.ibm.com Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Chris Zankel <chris@zankel.net> Cc: "David S. Miller" <davem@davemloft.net> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Greentime Hu <green.hu@gmail.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Guan Xuetao <gxt@pku.edu.cn> Cc: Ingo Molnar <mingo@redhat.com> Cc: "James E.J. Bottomley" <jejb@parisc-linux.org> Cc: Jonas Bonn <jonas@southpole.se> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Ley Foon Tan <lftan@altera.com> Cc: Mark Salter <msalter@redhat.com> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Matt Turner <mattst88@gmail.com> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Michal Hocko <mhocko@suse.com> Cc: Michal Simek <monstr@monstr.eu> Cc: Palmer Dabbelt <palmer@sifive.com> Cc: Paul Burton <paul.burton@mips.com> Cc: Richard Kuo <rkuo@codeaurora.org> Cc: Richard Weinberger <richard@nod.at> Cc: Rich Felker <dalias@libc.org> Cc: Russell King <linux@armlinux.org.uk> Cc: Serge Semin <fancer.lancer@gmail.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Tony Luck <tony.luck@intel.com> Cc: Vineet Gupta <vgupta@synopsys.com> Cc: Yoshinori Sato <ysato@users.sourceforge.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 57c8a66 commit 530d4c0

File tree

1 file changed

+9
-60
lines changed

1 file changed

+9
-60
lines changed

Documentation/core-api/boot-time-mm.rst

Lines changed: 9 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -5,54 +5,23 @@ Boot time memory management
55
Early system initialization cannot use "normal" memory management
66
simply because it is not set up yet. But there is still need to
77
allocate memory for various data structures, for instance for the
8-
physical page allocator. To address this, a specialized allocator
9-
called the :ref:`Boot Memory Allocator <bootmem>`, or bootmem, was
10-
introduced. Several years later PowerPC developers added a "Logical
11-
Memory Blocks" allocator, which was later adopted by other
12-
architectures and renamed to :ref:`memblock <memblock>`. There is also
13-
a compatibility layer called `nobootmem` that translates bootmem
14-
allocation interfaces to memblock calls.
8+
physical page allocator.
159

16-
The selection of the early allocator is done using
17-
``CONFIG_NO_BOOTMEM`` and ``CONFIG_HAVE_MEMBLOCK`` kernel
18-
configuration options. These options are enabled or disabled
19-
statically by the architectures' Kconfig files.
20-
21-
* Architectures that rely only on bootmem select
22-
``CONFIG_NO_BOOTMEM=n && CONFIG_HAVE_MEMBLOCK=n``.
23-
* The users of memblock with the nobootmem compatibility layer set
24-
``CONFIG_NO_BOOTMEM=y && CONFIG_HAVE_MEMBLOCK=y``.
25-
* And for those that use both memblock and bootmem the configuration
26-
includes ``CONFIG_NO_BOOTMEM=n && CONFIG_HAVE_MEMBLOCK=y``.
27-
28-
Whichever allocator is used, it is the responsibility of the
29-
architecture specific initialization to set it up in
30-
:c:func:`setup_arch` and tear it down in :c:func:`mem_init` functions.
10+
A specialized allocator called ``memblock`` performs the
11+
boot time memory management. The architecture specific initialization
12+
must set it up in :c:func:`setup_arch` and tear it down in
13+
:c:func:`mem_init` functions.
3114

3215
Once the early memory management is available it offers a variety of
3316
functions and macros for memory allocations. The allocation request
3417
may be directed to the first (and probably the only) node or to a
3518
particular node in a NUMA system. There are API variants that panic
36-
when an allocation fails and those that don't. And more recent and
37-
advanced memblock even allows controlling its own behaviour.
38-
39-
.. _bootmem:
40-
41-
Bootmem
42-
=======
19+
when an allocation fails and those that don't.
4320

44-
(mostly stolen from Mel Gorman's "Understanding the Linux Virtual
45-
Memory Manager" `book`_)
21+
Memblock also offers a variety of APIs that control its own behaviour.
4622

47-
.. _book: https://www.kernel.org/doc/gorman/
48-
49-
.. kernel-doc:: mm/bootmem.c
50-
:doc: bootmem overview
51-
52-
.. _memblock:
53-
54-
Memblock
55-
========
23+
Memblock Overview
24+
=================
5625

5726
.. kernel-doc:: mm/memblock.c
5827
:doc: memblock overview
@@ -61,26 +30,6 @@ Memblock
6130
Functions and structures
6231
========================
6332

64-
Common API
65-
----------
66-
67-
The functions that are described in this section are available
68-
regardless of what early memory manager is enabled.
69-
70-
.. kernel-doc:: mm/nobootmem.c
71-
72-
Bootmem specific API
73-
--------------------
74-
75-
These interfaces available only with bootmem, i.e when ``CONFIG_NO_BOOTMEM=n``
76-
77-
.. kernel-doc:: include/linux/bootmem.h
78-
.. kernel-doc:: mm/bootmem.c
79-
:functions:
80-
81-
Memblock specific API
82-
---------------------
83-
8433
Here is the description of memblock data structures, functions and
8534
macros. Some of them are actually internal, but since they are
8635
documented it would be silly to omit them. Besides, reading the

0 commit comments

Comments
 (0)