Commit 6db0a480 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Jonathan Corbet

docs: filesystems: convert romfs.txt to ReST

- Add a SPDX header;
- Add a document title;
- Some whitespace fixes and new line breaks;
- Mark literal blocks as such;
- Add table markups;
- Add it to filesystems/index.rst.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/d2cc83e7cd6de63c793ccd3f2588ea40f7f1e764.1581955849.git.mchehab+huawei@kernel.orgSigned-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent 56e6d5c0
...@@ -85,5 +85,6 @@ Documentation for filesystem implementations. ...@@ -85,5 +85,6 @@ Documentation for filesystem implementations.
qnx6 qnx6
ramfs-rootfs-initramfs ramfs-rootfs-initramfs
relay relay
romfs
virtiofs virtiofs
vfat vfat
ROMFS - ROM FILE SYSTEM .. SPDX-License-Identifier: GPL-2.0
=======================
ROMFS - ROM File System
=======================
This is a quite dumb, read only filesystem, mainly for initial RAM This is a quite dumb, read only filesystem, mainly for initial RAM
disks of installation disks. It has grown up by the need of having disks of installation disks. It has grown up by the need of having
...@@ -51,9 +55,9 @@ the 16 byte padding for the name and the contents, also 16+14+15 = 45 ...@@ -51,9 +55,9 @@ the 16 byte padding for the name and the contents, also 16+14+15 = 45
bytes. This is quite rare however, since most file names are longer bytes. This is quite rare however, since most file names are longer
than 3 bytes, and shorter than 15 bytes. than 3 bytes, and shorter than 15 bytes.
The layout of the filesystem is the following: The layout of the filesystem is the following::
offset content offset content
+---+---+---+---+ +---+---+---+---+
0 | - | r | o | m | \ 0 | - | r | o | m | \
...@@ -84,9 +88,9 @@ the source. This algorithm was chosen because although it's not quite ...@@ -84,9 +88,9 @@ the source. This algorithm was chosen because although it's not quite
reliable, it does not require any tables, and it is very simple. reliable, it does not require any tables, and it is very simple.
The following bytes are now part of the file system; each file header The following bytes are now part of the file system; each file header
must begin on a 16 byte boundary. must begin on a 16 byte boundary::
offset content offset content
+---+---+---+---+ +---+---+---+---+
0 | next filehdr|X| The offset of the next file header 0 | next filehdr|X| The offset of the next file header
...@@ -114,7 +118,9 @@ file is user and group 0, this should never be a problem for the ...@@ -114,7 +118,9 @@ file is user and group 0, this should never be a problem for the
intended use. The mapping of the 8 possible values to file types is intended use. The mapping of the 8 possible values to file types is
the following: the following:
== =============== ============================================
mapping spec.info means mapping spec.info means
== =============== ============================================
0 hard link link destination [file header] 0 hard link link destination [file header]
1 directory first file's header 1 directory first file's header
2 regular file unused, must be zero [MBZ] 2 regular file unused, must be zero [MBZ]
...@@ -123,6 +129,7 @@ the following: ...@@ -123,6 +129,7 @@ the following:
5 char device - " - 5 char device - " -
6 socket unused, MBZ 6 socket unused, MBZ
7 fifo unused, MBZ 7 fifo unused, MBZ
== =============== ============================================
Note that hard links are specifically marked in this filesystem, but Note that hard links are specifically marked in this filesystem, but
they will behave as you can expect (i.e. share the inode number). they will behave as you can expect (i.e. share the inode number).
...@@ -158,24 +165,24 @@ to romfs-subscribe@shadow.banki.hu, the content is irrelevant. ...@@ -158,24 +165,24 @@ to romfs-subscribe@shadow.banki.hu, the content is irrelevant.
Pending issues: Pending issues:
- Permissions and owner information are pretty essential features of a - Permissions and owner information are pretty essential features of a
Un*x like system, but romfs does not provide the full possibilities. Un*x like system, but romfs does not provide the full possibilities.
I have never found this limiting, but others might. I have never found this limiting, but others might.
- The file system is read only, so it can be very small, but in case - The file system is read only, so it can be very small, but in case
one would want to write _anything_ to a file system, he still needs one would want to write _anything_ to a file system, he still needs
a writable file system, thus negating the size advantages. Possible a writable file system, thus negating the size advantages. Possible
solutions: implement write access as a compile-time option, or a new, solutions: implement write access as a compile-time option, or a new,
similarly small writable filesystem for RAM disks. similarly small writable filesystem for RAM disks.
- Since the files are only required to have alignment on a 16 byte - Since the files are only required to have alignment on a 16 byte
boundary, it is currently possibly suboptimal to read or execute files boundary, it is currently possibly suboptimal to read or execute files
from the filesystem. It might be resolved by reordering file data to from the filesystem. It might be resolved by reordering file data to
have most of it (i.e. except the start and the end) laying at "natural" have most of it (i.e. except the start and the end) laying at "natural"
boundaries, thus it would be possible to directly map a big portion of boundaries, thus it would be possible to directly map a big portion of
the file contents to the mm subsystem. the file contents to the mm subsystem.
- Compression might be an useful feature, but memory is quite a - Compression might be an useful feature, but memory is quite a
limiting factor in my eyes. limiting factor in my eyes.
- Where it is used? - Where it is used?
...@@ -183,4 +190,5 @@ limiting factor in my eyes. ...@@ -183,4 +190,5 @@ limiting factor in my eyes.
Have fun, Have fun,
Janos Farkas <chexum@shadow.banki.hu> Janos Farkas <chexum@shadow.banki.hu>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment