From: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
To: Linux Doc Mailing List <linux-doc@vger.kernel.org>
Cc: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>,
Jonathan Corbet <corbet@lwn.net>,
linux-fsdevel@vger.kernel.org,
Christoph Hellwig <hch@infradead.org>
Subject: [PATCH 39/44] docs: filesystems: convert sysv-fs.txt to ReST
Date: Mon, 17 Feb 2020 17:12:25 +0100 [thread overview]
Message-ID: <5b96a6efba95773af439ab25a7dbe4d0edf8c867.1581955849.git.mchehab+huawei@kernel.org> (raw)
In-Reply-To: <cover.1581955849.git.mchehab+huawei@kernel.org>
- 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: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
---
Documentation/filesystems/index.rst | 1 +
.../filesystems/{sysv-fs.txt => sysv-fs.rst} | 155 +++++++++++++-----
2 files changed, 112 insertions(+), 44 deletions(-)
rename Documentation/filesystems/{sysv-fs.txt => sysv-fs.rst} (73%)
diff --git a/Documentation/filesystems/index.rst b/Documentation/filesystems/index.rst
index bafe92c72433..d583b8b35196 100644
--- a/Documentation/filesystems/index.rst
+++ b/Documentation/filesystems/index.rst
@@ -88,5 +88,6 @@ Documentation for filesystem implementations.
romfs
squashfs
sysfs
+ sysv-fs
virtiofs
vfat
diff --git a/Documentation/filesystems/sysv-fs.txt b/Documentation/filesystems/sysv-fs.rst
similarity index 73%
rename from Documentation/filesystems/sysv-fs.txt
rename to Documentation/filesystems/sysv-fs.rst
index 253b50d1328e..89e40911ad7c 100644
--- a/Documentation/filesystems/sysv-fs.txt
+++ b/Documentation/filesystems/sysv-fs.rst
@@ -1,25 +1,40 @@
+.. SPDX-License-Identifier: GPL-2.0
+
+==================
+SystemV Filesystem
+==================
+
It implements all of
- Xenix FS,
- SystemV/386 FS,
- Coherent FS.
To install:
+
* Answer the 'System V and Coherent filesystem support' question with 'y'
when configuring the kernel.
-* To mount a disk or a partition, use
+* To mount a disk or a partition, use::
+
mount [-r] -t sysv device mountpoint
- The file system type names
+
+ The file system type names::
+
-t sysv
-t xenix
-t coherent
+
may be used interchangeably, but the last two will eventually disappear.
Bugs in the present implementation:
+
- Coherent FS:
+
- The "free list interleave" n:m is currently ignored.
- Only file systems with no filesystem name and no pack name are recognized.
- (See Coherent "man mkfs" for a description of these features.)
+ (See Coherent "man mkfs" for a description of these features.)
+
- SystemV Release 2 FS:
+
The superblock is only searched in the blocks 9, 15, 18, which
corresponds to the beginning of track 1 on floppy disks. No support
for this FS on hard disk yet.
@@ -28,12 +43,14 @@ Bugs in the present implementation:
These filesystems are rather similar. Here is a comparison with Minix FS:
* Linux fdisk reports on partitions
+
- Minix FS 0x81 Linux/Minix
- Xenix FS ??
- SystemV FS ??
- Coherent FS 0x08 AIX bootable
* Size of a block or zone (data allocation unit on disk)
+
- Minix FS 1024
- Xenix FS 1024 (also 512 ??)
- SystemV FS 1024 (also 512 and 2048)
@@ -45,37 +62,51 @@ These filesystems are rather similar. Here is a comparison with Minix FS:
all the block numbers (including the super block) are offset by one track.
* Byte ordering of "short" (16 bit entities) on disk:
+
- Minix FS little endian 0 1
- Xenix FS little endian 0 1
- SystemV FS little endian 0 1
- Coherent FS little endian 0 1
+
Of course, this affects only the file system, not the data of files on it!
* Byte ordering of "long" (32 bit entities) on disk:
+
- Minix FS little endian 0 1 2 3
- Xenix FS little endian 0 1 2 3
- SystemV FS little endian 0 1 2 3
- Coherent FS PDP-11 2 3 0 1
+
Of course, this affects only the file system, not the data of files on it!
* Inode on disk: "short", 0 means non-existent, the root dir ino is:
- - Minix FS 1
- - Xenix FS, SystemV FS, Coherent FS 2
+
+ ================================= ==
+ Minix FS 1
+ Xenix FS, SystemV FS, Coherent FS 2
+ ================================= ==
* Maximum number of hard links to a file:
- - Minix FS 250
- - Xenix FS ??
- - SystemV FS ??
- - Coherent FS >=10000
+
+ =========== =========
+ Minix FS 250
+ Xenix FS ??
+ SystemV FS ??
+ Coherent FS >=10000
+ =========== =========
* Free inode management:
- - Minix FS a bitmap
+
+ - Minix FS
+ a bitmap
- Xenix FS, SystemV FS, Coherent FS
There is a cache of a certain number of free inodes in the super-block.
When it is exhausted, new free inodes are found using a linear search.
* Free block management:
- - Minix FS a bitmap
+
+ - Minix FS
+ a bitmap
- Xenix FS, SystemV FS, Coherent FS
Free blocks are organized in a "free list". Maybe a misleading term,
since it is not true that every free block contains a pointer to
@@ -86,13 +117,18 @@ These filesystems are rather similar. Here is a comparison with Minix FS:
0 on Xenix FS and SystemV FS, with a block zeroed out on Coherent FS.
* Super-block location:
- - Minix FS block 1 = bytes 1024..2047
- - Xenix FS block 1 = bytes 1024..2047
- - SystemV FS bytes 512..1023
- - Coherent FS block 1 = bytes 512..1023
+
+ =========== ==========================
+ Minix FS block 1 = bytes 1024..2047
+ Xenix FS block 1 = bytes 1024..2047
+ SystemV FS bytes 512..1023
+ Coherent FS block 1 = bytes 512..1023
+ =========== ==========================
* Super-block layout:
- - Minix FS
+
+ - Minix FS::
+
unsigned short s_ninodes;
unsigned short s_nzones;
unsigned short s_imap_blocks;
@@ -101,7 +137,9 @@ These filesystems are rather similar. Here is a comparison with Minix FS:
unsigned short s_log_zone_size;
unsigned long s_max_size;
unsigned short s_magic;
- - Xenix FS, SystemV FS, Coherent FS
+
+ - Xenix FS, SystemV FS, Coherent FS::
+
unsigned short s_firstdatazone;
unsigned long s_nzones;
unsigned short s_fzone_count;
@@ -120,23 +158,33 @@ These filesystems are rather similar. Here is a comparison with Minix FS:
unsigned short s_interleave_m,s_interleave_n; -- Coherent FS only
char s_fname[6];
char s_fpack[6];
+
then they differ considerably:
- Xenix FS
+
+ Xenix FS::
+
char s_clean;
char s_fill[371];
long s_magic;
long s_type;
- SystemV FS
+
+ SystemV FS::
+
long s_fill[12 or 14];
long s_state;
long s_magic;
long s_type;
- Coherent FS
+
+ Coherent FS::
+
unsigned long s_unique;
+
Note that Coherent FS has no magic.
* Inode layout:
- - Minix FS
+
+ - Minix FS::
+
unsigned short i_mode;
unsigned short i_uid;
unsigned long i_size;
@@ -144,7 +192,9 @@ These filesystems are rather similar. Here is a comparison with Minix FS:
unsigned char i_gid;
unsigned char i_nlinks;
unsigned short i_zone[7+1+1];
- - Xenix FS, SystemV FS, Coherent FS
+
+ - Xenix FS, SystemV FS, Coherent FS::
+
unsigned short i_mode;
unsigned short i_nlink;
unsigned short i_uid;
@@ -155,38 +205,55 @@ These filesystems are rather similar. Here is a comparison with Minix FS:
unsigned long i_mtime;
unsigned long i_ctime;
+
* Regular file data blocks are organized as
- - Minix FS
- 7 direct blocks
- 1 indirect block (pointers to blocks)
- 1 double-indirect block (pointer to pointers to blocks)
- - Xenix FS, SystemV FS, Coherent FS
- 10 direct blocks
- 1 indirect block (pointers to blocks)
- 1 double-indirect block (pointer to pointers to blocks)
- 1 triple-indirect block (pointer to pointers to pointers to blocks)
-
-* Inode size, inodes per block
- - Minix FS 32 32
- - Xenix FS 64 16
- - SystemV FS 64 16
- - Coherent FS 64 8
+
+ - Minix FS:
+
+ - 7 direct blocks
+ - 1 indirect block (pointers to blocks)
+ - 1 double-indirect block (pointer to pointers to blocks)
+
+ - Xenix FS, SystemV FS, Coherent FS:
+
+ - 10 direct blocks
+ - 1 indirect block (pointers to blocks)
+ - 1 double-indirect block (pointer to pointers to blocks)
+ - 1 triple-indirect block (pointer to pointers to pointers to blocks)
+
+
+ =========== ========== ================
+ Inode size inodes per block
+ =========== ========== ================
+ Minix FS 32 32
+ Xenix FS 64 16
+ SystemV FS 64 16
+ Coherent FS 64 8
+ =========== ========== ================
* Directory entry on disk
- - Minix FS
+
+ - Minix FS::
+
unsigned short inode;
char name[14/30];
- - Xenix FS, SystemV FS, Coherent FS
+
+ - Xenix FS, SystemV FS, Coherent FS::
+
unsigned short inode;
char name[14];
-* Dir entry size, dir entries per block
- - Minix FS 16/32 64/32
- - Xenix FS 16 64
- - SystemV FS 16 64
- - Coherent FS 16 32
+ =========== ============== =====================
+ Dir entry size dir entries per block
+ =========== ============== =====================
+ Minix FS 16/32 64/32
+ Xenix FS 16 64
+ SystemV FS 16 64
+ Coherent FS 16 32
+ =========== ============== =====================
* How to implement symbolic links such that the host fsck doesn't scream:
+
- Minix FS normal
- Xenix FS kludge: as regular files with chmod 1000
- SystemV FS ??
--
2.24.1
next prev parent reply other threads:[~2020-02-17 16:12 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1581955849.git.mchehab+huawei@kernel.org>
2020-02-17 16:11 ` [PATCH 01/44] docs: filesystems: convert 9p.txt to ReST Mauro Carvalho Chehab
2020-02-17 16:11 ` [PATCH 02/44] docs: filesystems: convert adfs.txt " Mauro Carvalho Chehab
2020-02-17 16:11 ` [PATCH 03/44] docs: filesystems: convert affs.txt " Mauro Carvalho Chehab
2020-02-18 13:04 ` David Sterba
2020-02-17 16:11 ` [PATCH 04/44] docs: filesystems: convert afs.txt " Mauro Carvalho Chehab
2020-02-17 16:11 ` [PATCH 05/44] docs: filesystems: convert autofs-mount-control.txt " Mauro Carvalho Chehab
2020-02-17 16:11 ` [PATCH 06/44] docs: filesystems: convert befs.txt " Mauro Carvalho Chehab
2020-02-17 16:11 ` [PATCH 07/44] docs: filesystems: convert bfs.txt " Mauro Carvalho Chehab
2020-02-17 16:11 ` [PATCH 08/44] docs: filesystems: convert btrfs.txt " Mauro Carvalho Chehab
2020-02-17 18:50 ` David Sterba
2020-02-17 19:34 ` Jonathan Corbet
2020-02-18 11:44 ` David Sterba
2020-02-17 16:11 ` [PATCH 09/44] docs: filesystems: convert ceph.txt " Mauro Carvalho Chehab
2020-02-18 11:57 ` Jeff Layton
2020-02-17 16:11 ` [PATCH 10/44] docs: filesystems: convert cramfs.txt " Mauro Carvalho Chehab
2020-02-17 18:11 ` Nicolas Pitre
2020-02-17 16:11 ` [PATCH 11/44] docs: filesystems: convert debugfs.txt " Mauro Carvalho Chehab
2020-02-17 16:11 ` [PATCH 12/44] docs: filesystems: convert dlmfs.txt " Mauro Carvalho Chehab
2020-02-18 1:21 ` Joseph Qi
2020-02-18 10:07 ` Mauro Carvalho Chehab
2020-02-18 10:55 ` Joseph Qi
2020-02-17 16:11 ` [PATCH 13/44] docs: filesystems: convert ecryptfs.txt " Mauro Carvalho Chehab
2020-02-17 20:07 ` Tyler Hicks
2020-02-17 16:12 ` [PATCH 14/44] docs: filesystems: convert efivarfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 15/44] docs: filesystems: convert erofs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 16/44] docs: filesystems: convert ext2.txt " Mauro Carvalho Chehab
2020-02-18 7:11 ` Jan Kara
2020-02-17 16:12 ` [PATCH 17/44] docs: filesystems: convert ext3.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 18/44] docs: filesystems: convert f2fs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 19/44] docs: filesystems: convert gfs2.txt " Mauro Carvalho Chehab
2020-02-18 13:13 ` Bob Peterson
2020-02-17 16:12 ` [PATCH 20/44] docs: filesystems: convert gfs2-uevents.txt " Mauro Carvalho Chehab
2020-02-18 13:13 ` Bob Peterson
2020-02-17 16:12 ` [PATCH 21/44] docs: filesystems: convert hfsplus.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 22/44] docs: filesystems: convert hfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 23/44] docs: filesystems: convert hpfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 24/44] docs: filesystems: convert inotify.txt " Mauro Carvalho Chehab
2020-02-18 7:10 ` Jan Kara
2020-02-17 16:12 ` [PATCH 25/44] docs: filesystems: convert isofs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 26/44] docs: filesystems: convert nilfs2.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 27/44] docs: filesystems: convert ntfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 28/44] docs: filesystems: convert ocfs2-online-filecheck.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 29/44] docs: filesystems: convert ocfs2.txt " Mauro Carvalho Chehab
2020-02-18 1:23 ` Joseph Qi
2020-02-17 16:12 ` [PATCH 30/44] docs: filesystems: convert omfs.txt " Mauro Carvalho Chehab
2020-02-18 0:57 ` Bob Copeland
2020-02-17 16:12 ` [PATCH 31/44] docs: filesystems: convert orangefs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 33/44] docs: filesystems: convert qnx6.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 34/44] docs: filesystems: convert ramfs-rootfs-initramfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 35/44] docs: filesystems: convert relay.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 36/44] docs: filesystems: convert romfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 37/44] docs: filesystems: convert squashfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 38/44] docs: filesystems: convert sysfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` Mauro Carvalho Chehab [this message]
2020-02-17 16:12 ` [PATCH 40/44] docs: filesystems: convert tmpfs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 41/44] docs: filesystems: convert ubifs-authentication.rst.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 42/44] docs: filesystems: convert ubifs.txt " Mauro Carvalho Chehab
2020-02-17 16:12 ` [PATCH 43/44] docs: filesystems: convert udf.txt " Mauro Carvalho Chehab
2020-02-18 7:12 ` Jan Kara
2020-02-18 10:13 ` Mauro Carvalho Chehab
2020-02-18 10:57 ` Jan Kara
2020-02-17 16:12 ` [PATCH 44/44] docs: filesystems: convert zonefs.txt " Mauro Carvalho Chehab
2020-02-18 3:46 ` Damien Le Moal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5b96a6efba95773af439ab25a7dbe4d0edf8c867.1581955849.git.mchehab+huawei@kernel.org \
--to=mchehab+huawei@kernel.org \
--cc=corbet@lwn.net \
--cc=hch@infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).