Skip to content

Commit

Permalink
Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kern…
Browse files Browse the repository at this point in the history
…el/git/tytso/ext4

Pull ext4 updates from Ted Ts'o:

 - further restructure ext4 documentation

 - fix up ext4's delayed allocation for bigalloc file systems

 - fix up some syzbot-detected races in EXT4_IOC_MOVE_EXT,
   EXT4_IOC_SWAP_BOOT, and ext4_remount

 - ... and a few other miscellaneous bugs and optimizations.

* tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (21 commits)
  ext4: fix use-after-free race in ext4_remount()'s error path
  ext4: cache NULL when both default_acl and acl are NULL
  docs: promote the ext4 data structures book to top level
  docs: move ext4 administrative docs to admin-guide/
  jbd2: fix use after free in jbd2_log_do_checkpoint()
  ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR
  ext4: fix setattr project check in fssetxattr ioctl
  docs: make ext4 readme tables readable
  docs: fix ext4 documentation table formatting problems
  docs: generate a separate ext4 pdf file from the documentation
  ext4: convert fault handler to use vm_fault_t type
  ext4: initialize retries variable in ext4_da_write_inline_data_begin()
  ext4: fix EXT4_IOC_SWAP_BOOT
  ext4: fix build error when DX_DEBUG is defined
  ext4: fix argument checking in EXT4_IOC_MOVE_EXT
  ext4: fix reserved cluster accounting at page invalidation time
  ext4: adjust reserved cluster count when removing extents
  ext4: reduce reserved cluster count by number of allocated clusters
  ext4: fix reserved cluster accounting at delayed write time
  ext4: add new pending reservation mechanism
  ...
  • Loading branch information
torvalds committed Oct 24, 2018
2 parents d6edff7 + 33458ea commit 5993692
Show file tree
Hide file tree
Showing 44 changed files with 1,984 additions and 1,169 deletions.
574 changes: 574 additions & 0 deletions Documentation/admin-guide/ext4.rst

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions Documentation/admin-guide/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ configure specific aspects of kernel behavior to your liking.
java
ras
bcache
ext4
pm/index
thunderbolt
LSM/index
Expand Down
4 changes: 4 additions & 0 deletions Documentation/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -383,6 +383,10 @@
'The kernel development community', 'manual'),
('filesystems/index', 'filesystems.tex', 'Linux Filesystems API',
'The kernel development community', 'manual'),
('admin-guide/ext4', 'ext4-admin-guide.tex', 'ext4 Administration Guide',
'ext4 Community', 'manual'),
('filesystems/ext4/index', 'ext4-data-structures.tex',
'ext4 Data Structures and Algorithms', 'ext4 Community', 'manual'),
('gpu/index', 'gpu.tex', 'Linux GPU Driver Developer\'s Guide',
'The kernel development community', 'manual'),
('input/index', 'linux-input.tex', 'The Linux input driver subsystem',
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Extended attributes, when stored after the inode, have a header
``ext4_xattr_ibody_header`` that is 4 bytes long:

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand All @@ -47,7 +47,7 @@ The beginning of an extended attribute block is in
``struct ext4_xattr_header``, which is 32 bytes long:

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -92,7 +92,7 @@ entries must be stored in sorted order. The sort order is
Attributes stored inside an inode do not need be stored in sorted order.

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -157,7 +157,7 @@ attribute name index field is set, and matching string is removed from
the key name. Here is a map of name index values to key prefixes:

.. list-table::
:widths: 1 79
:widths: 16 64
:header-rows: 1

* - Name Index
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ of checksum. The checksum function is whatever the superblock describes
(crc32c as of October 2013) unless noted otherwise.

.. list-table::
:widths: 1 1 4
:widths: 20 8 50
:header-rows: 1

* - Metadata
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ is at most 263 bytes long, though on disk you'll need to reference
``dirent.rec_len`` to know for sure.

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -66,7 +66,7 @@ tree traversal. This format is ``ext4_dir_entry_2``, which is at most
``dirent.rec_len`` to know for sure.

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -99,7 +99,7 @@ tree traversal. This format is ``ext4_dir_entry_2``, which is at most
The directory file type is one of the following values:

.. list-table::
:widths: 1 79
:widths: 16 64
:header-rows: 1

* - Value
Expand Down Expand Up @@ -130,7 +130,7 @@ in the place where the name normally goes. The structure is
``struct ext4_dir_entry_tail``:

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -212,7 +212,7 @@ The root of the htree is in ``struct dx_root``, which is the full length
of a data block:

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -305,7 +305,7 @@ of a data block:
The directory hash is one of the following values:

.. list-table::
:widths: 1 79
:widths: 16 64
:header-rows: 1

* - Value
Expand All @@ -327,7 +327,7 @@ Interior nodes of an htree are recorded as ``struct dx_node``, which is
also the full length of a data block:

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -375,7 +375,7 @@ The hash maps that exist in both ``struct dx_root`` and
long:

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down Expand Up @@ -405,7 +405,7 @@ directory index (which will ensure that there's space for the checksum.
The dx\_tail structure is 8 bytes long and looks like this:

.. list-table::
:widths: 1 1 1 77
:widths: 8 8 24 40
:header-rows: 1

* - Offset
Expand Down
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit 5993692

Please sign in to comment.