docs: early-userspace: convert docs to ReST and rename to *.rst
The two files there describes a Kernel API feature, used to support early userspace stuff. Prepare for moving them to the kernel API book by converting to ReST format. The conversion itself was quite trivial: just add/mark a few titles as such, add a literal block markup, add a table markup and a few blank lines, in order to make Sphinx to properly parse it. At its new index.rst, let's add a :orphan: while this is not linked to the main index.rst file, in order to avoid build warnings. Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
parent
93d2c15967
commit
0d07cf5e53
|
@ -1,8 +1,10 @@
|
||||||
initramfs buffer format
|
=======================
|
||||||
-----------------------
|
initramfs buffer format
|
||||||
|
=======================
|
||||||
|
|
||||||
Al Viro, H. Peter Anvin
|
Al Viro, H. Peter Anvin
|
||||||
Last revision: 2002-01-13
|
|
||||||
|
Last revision: 2002-01-13
|
||||||
|
|
||||||
Starting with kernel 2.5.x, the old "initial ramdisk" protocol is
|
Starting with kernel 2.5.x, the old "initial ramdisk" protocol is
|
||||||
getting {replaced/complemented} with the new "initial ramfs"
|
getting {replaced/complemented} with the new "initial ramfs"
|
||||||
|
@ -18,7 +20,8 @@ archive can be compressed using gzip(1). One valid version of an
|
||||||
initramfs buffer is thus a single .cpio.gz file.
|
initramfs buffer is thus a single .cpio.gz file.
|
||||||
|
|
||||||
The full format of the initramfs buffer is defined by the following
|
The full format of the initramfs buffer is defined by the following
|
||||||
grammar, where:
|
grammar, where::
|
||||||
|
|
||||||
* is used to indicate "0 or more occurrences of"
|
* is used to indicate "0 or more occurrences of"
|
||||||
(|) indicates alternatives
|
(|) indicates alternatives
|
||||||
+ indicates concatenation
|
+ indicates concatenation
|
||||||
|
@ -49,7 +52,9 @@ hexadecimal ASCII numbers fully padded with '0' on the left to the
|
||||||
full width of the field, for example, the integer 4780 is represented
|
full width of the field, for example, the integer 4780 is represented
|
||||||
by the ASCII string "000012ac"):
|
by the ASCII string "000012ac"):
|
||||||
|
|
||||||
|
============= ================== ==============================================
|
||||||
Field name Field size Meaning
|
Field name Field size Meaning
|
||||||
|
============= ================== ==============================================
|
||||||
c_magic 6 bytes The string "070701" or "070702"
|
c_magic 6 bytes The string "070701" or "070702"
|
||||||
c_ino 8 bytes File inode number
|
c_ino 8 bytes File inode number
|
||||||
c_mode 8 bytes File mode and permissions
|
c_mode 8 bytes File mode and permissions
|
||||||
|
@ -65,6 +70,7 @@ c_rmin 8 bytes Minor part of device node reference
|
||||||
c_namesize 8 bytes Length of filename, including final \0
|
c_namesize 8 bytes Length of filename, including final \0
|
||||||
c_chksum 8 bytes Checksum of data field if c_magic is 070702;
|
c_chksum 8 bytes Checksum of data field if c_magic is 070702;
|
||||||
otherwise zero
|
otherwise zero
|
||||||
|
============= ================== ==============================================
|
||||||
|
|
||||||
The c_mode field matches the contents of st_mode returned by stat(2)
|
The c_mode field matches the contents of st_mode returned by stat(2)
|
||||||
on Linux, and encodes the file type and file permissions.
|
on Linux, and encodes the file type and file permissions.
|
||||||
|
@ -82,7 +88,8 @@ If the filename is "TRAILER!!!" this is actually an end-of-archive
|
||||||
marker; the c_filesize for an end-of-archive marker must be zero.
|
marker; the c_filesize for an end-of-archive marker must be zero.
|
||||||
|
|
||||||
|
|
||||||
*** Handling of hard links
|
Handling of hard links
|
||||||
|
======================
|
||||||
|
|
||||||
When a nondirectory with c_nlink > 1 is seen, the (c_maj,c_min,c_ino)
|
When a nondirectory with c_nlink > 1 is seen, the (c_maj,c_min,c_ino)
|
||||||
tuple is looked up in a tuple buffer. If not found, it is entered in
|
tuple is looked up in a tuple buffer. If not found, it is entered in
|
|
@ -1,3 +1,4 @@
|
||||||
|
=======================
|
||||||
Early userspace support
|
Early userspace support
|
||||||
=======================
|
=======================
|
||||||
|
|
||||||
|
@ -26,6 +27,7 @@ archive to be used as the image or have the kernel build process build
|
||||||
the image from specifications.
|
the image from specifications.
|
||||||
|
|
||||||
CPIO ARCHIVE method
|
CPIO ARCHIVE method
|
||||||
|
-------------------
|
||||||
|
|
||||||
You can create a cpio archive that contains the early userspace image.
|
You can create a cpio archive that contains the early userspace image.
|
||||||
Your cpio archive should be specified in CONFIG_INITRAMFS_SOURCE and it
|
Your cpio archive should be specified in CONFIG_INITRAMFS_SOURCE and it
|
||||||
|
@ -34,6 +36,7 @@ CONFIG_INITRAMFS_SOURCE and directory and file names are not allowed in
|
||||||
combination with a cpio archive.
|
combination with a cpio archive.
|
||||||
|
|
||||||
IMAGE BUILDING method
|
IMAGE BUILDING method
|
||||||
|
---------------------
|
||||||
|
|
||||||
The kernel build process can also build an early userspace image from
|
The kernel build process can also build an early userspace image from
|
||||||
source parts rather than supplying a cpio archive. This method provides
|
source parts rather than supplying a cpio archive. This method provides
|
|
@ -0,0 +1,18 @@
|
||||||
|
:orphan:
|
||||||
|
|
||||||
|
===============
|
||||||
|
Early Userspace
|
||||||
|
===============
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 1
|
||||||
|
|
||||||
|
early_userspace_support
|
||||||
|
buffer-format
|
||||||
|
|
||||||
|
.. only:: subproject and html
|
||||||
|
|
||||||
|
Indices
|
||||||
|
=======
|
||||||
|
|
||||||
|
* :ref:`genindex`
|
|
@ -239,7 +239,7 @@ rdinit=<executable file>
|
||||||
A description of the process of mounting the root file system can be
|
A description of the process of mounting the root file system can be
|
||||||
found in:
|
found in:
|
||||||
|
|
||||||
Documentation/early-userspace/README
|
Documentation/early-userspace/early_userspace_support.rst
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -105,7 +105,7 @@ All this differs from the old initrd in several ways:
|
||||||
- The old initrd file was a gzipped filesystem image (in some file format,
|
- The old initrd file was a gzipped filesystem image (in some file format,
|
||||||
such as ext2, that needed a driver built into the kernel), while the new
|
such as ext2, that needed a driver built into the kernel), while the new
|
||||||
initramfs archive is a gzipped cpio archive (like tar only simpler,
|
initramfs archive is a gzipped cpio archive (like tar only simpler,
|
||||||
see cpio(1) and Documentation/early-userspace/buffer-format.txt). The
|
see cpio(1) and Documentation/early-userspace/buffer-format.rst). The
|
||||||
kernel's cpio extraction code is not only extremely small, it's also
|
kernel's cpio extraction code is not only extremely small, it's also
|
||||||
__init text and data that can be discarded during the boot process.
|
__init text and data that can be discarded during the boot process.
|
||||||
|
|
||||||
|
@ -159,7 +159,7 @@ One advantage of the configuration file is that root access is not required to
|
||||||
set permissions or create device nodes in the new archive. (Note that those
|
set permissions or create device nodes in the new archive. (Note that those
|
||||||
two example "file" entries expect to find files named "init.sh" and "busybox" in
|
two example "file" entries expect to find files named "init.sh" and "busybox" in
|
||||||
a directory called "initramfs", under the linux-2.6.* directory. See
|
a directory called "initramfs", under the linux-2.6.* directory. See
|
||||||
Documentation/early-userspace/README for more details.)
|
Documentation/early-userspace/early_userspace_support.rst for more details.)
|
||||||
|
|
||||||
The kernel does not depend on external cpio tools. If you specify a
|
The kernel does not depend on external cpio tools. If you specify a
|
||||||
directory instead of a configuration file, the kernel's build infrastructure
|
directory instead of a configuration file, the kernel's build infrastructure
|
||||||
|
|
|
@ -18,7 +18,7 @@ config INITRAMFS_SOURCE
|
||||||
When multiple directories and files are specified then the
|
When multiple directories and files are specified then the
|
||||||
initramfs image will be the aggregate of all of them.
|
initramfs image will be the aggregate of all of them.
|
||||||
|
|
||||||
See <file:Documentation/early-userspace/README> for more details.
|
See <file:Documentation/early-userspace/early_userspace_support.rst> for more details.
|
||||||
|
|
||||||
If you are not sure, leave it blank.
|
If you are not sure, leave it blank.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue