mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-12-29 17:25:38 +00:00
ext4: docs: Take out unneeded escaping
The new file Documentation/orphan/ext4.rst escapes underscores ("\_") throughout. However, RST doesn't actually require that, so the escaping only succeeds in making the document less readable. Remove the unneeded escapes. Reviewed-by: Jan Kara <jack@suse.cz> Link: https://lore.kernel.org/r/20210902220854.198850-3-corbet@lwn.net Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
parent
91c76340b4
commit
7275423c17
@ -12,31 +12,31 @@ track the inode as orphan so that in case of crash extra blocks allocated to
|
||||
the file get truncated.
|
||||
|
||||
Traditionally ext4 tracks orphan inodes in a form of single linked list where
|
||||
superblock contains the inode number of the last orphan inode (s\_last\_orphan
|
||||
superblock contains the inode number of the last orphan inode (s_last_orphan
|
||||
field) and then each inode contains inode number of the previously orphaned
|
||||
inode (we overload i\_dtime inode field for this). However this filesystem
|
||||
inode (we overload i_dtime inode field for this). However this filesystem
|
||||
global single linked list is a scalability bottleneck for workloads that result
|
||||
in heavy creation of orphan inodes. When orphan file feature
|
||||
(COMPAT\_ORPHAN\_FILE) is enabled, the filesystem has a special inode
|
||||
(referenced from the superblock through s\_orphan_file_inum) with several
|
||||
(COMPAT_ORPHAN_FILE) is enabled, the filesystem has a special inode
|
||||
(referenced from the superblock through s_orphan_file_inum) with several
|
||||
blocks. Each of these blocks has a structure:
|
||||
|
||||
============= ================ =============== ===============================
|
||||
Offset Type Name Description
|
||||
============= ================ =============== ===============================
|
||||
0x0 Array of Orphan inode Each \_\_le32 entry is either
|
||||
\_\_le32 entries entries empty (0) or it contains
|
||||
0x0 Array of Orphan inode Each __le32 entry is either
|
||||
__le32 entries entries empty (0) or it contains
|
||||
inode number of an orphan
|
||||
inode.
|
||||
blocksize-8 \_\_le32 ob\_magic Magic value stored in orphan
|
||||
blocksize-8 __le32 ob_magic Magic value stored in orphan
|
||||
block tail (0x0b10ca04)
|
||||
blocksize-4 \_\_le32 ob\_checksum Checksum of the orphan block.
|
||||
blocksize-4 __le32 ob_checksum Checksum of the orphan block.
|
||||
============= ================ =============== ===============================
|
||||
|
||||
When a filesystem with orphan file feature is writeably mounted, we set
|
||||
RO\_COMPAT\_ORPHAN\_PRESENT feature in the superblock to indicate there may
|
||||
RO_COMPAT_ORPHAN_PRESENT feature in the superblock to indicate there may
|
||||
be valid orphan entries. In case we see this feature when mounting the
|
||||
filesystem, we read the whole orphan file and process all orphan inodes found
|
||||
there as usual. When cleanly unmounting the filesystem we remove the
|
||||
RO\_COMPAT\_ORPHAN\_PRESENT feature to avoid unnecessary scanning of the orphan
|
||||
RO_COMPAT_ORPHAN_PRESENT feature to avoid unnecessary scanning of the orphan
|
||||
file and also make the filesystem fully compatible with older kernels.
|
||||
|
Loading…
Reference in New Issue
Block a user