]> www.infradead.org Git - users/hch/xfs-documentation.git/log
users/hch/xfs-documentation.git
12 months agoMerge tag 'xfsdocs-6.10-updates_2024-08-22' of git://git.kernel.org/pub/scm/linux... for-next master 2024-08-22
Darrick J. Wong [Fri, 23 Aug 2024 00:05:15 +0000 (17:05 -0700)]
Merge tag 'xfsdocs-6.10-updates_2024-08-22' of git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-documentation into mainn

xfs-documentation: updates for 6.10 [1/5]

Here's a pile of updates detailing the changes made during 2023 and 2024 for
kernel 6.10.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
* tag 'xfsdocs-6.10-updates_2024-08-22' of git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-documentation:
  design: fix the changelog to reflect the new changes
  design: document the metadump v2 format
  design: document the parent pointer ondisk format
  design: document new logged parent pointer attribute variants
  design: document atomic file mapping exchange log intent structures

12 months agodesign: fix the changelog to reflect the new changes
Darrick J. Wong [Wed, 7 Aug 2024 18:15:17 +0000 (11:15 -0700)]
design: fix the changelog to reflect the new changes

Minor updates to the changelog to reflect the last change (where we
forgot to do this) and this one.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
12 months agodesign: document the metadump v2 format
Darrick J. Wong [Wed, 7 Aug 2024 18:47:01 +0000 (11:47 -0700)]
design: document the metadump v2 format

Document the ondisk format of v2 metadumps.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
12 months agodesign: document the parent pointer ondisk format
Darrick J. Wong [Thu, 13 Jul 2023 00:20:59 +0000 (17:20 -0700)]
design: document the parent pointer ondisk format

Add parent pointers to the ondisk format documentation.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
12 months agodesign: document new logged parent pointer attribute variants
Darrick J. Wong [Wed, 12 Jul 2023 23:54:42 +0000 (16:54 -0700)]
design: document new logged parent pointer attribute variants

In preparation for parent pointers, we added a few new opcodes for
logged extended attribute updates.  Document them now.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
12 months agodesign: document atomic file mapping exchange log intent structures
Darrick J. Wong [Fri, 26 Mar 2021 02:47:00 +0000 (19:47 -0700)]
design: document atomic file mapping exchange log intent structures

Document the log intent item formats for the mapping exchange feature.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
2 years agodesign: document extended attribute log item changes 2023-02-16
Darrick J. Wong [Tue, 17 Jan 2023 18:31:59 +0000 (10:31 -0800)]
design: document extended attribute log item changes

Describe the changes to the ondisk log format that are required to
support atomic updates to extended attributes.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Chandan Babu R <chandan.babu@oracle.com>
2 years agodesign: document the large extent count ondisk format changes
Darrick J. Wong [Tue, 17 Jan 2023 18:23:09 +0000 (10:23 -0800)]
design: document the large extent count ondisk format changes

Update the ondisk format documentation to discuss the larger maximum
extent counts that were added in 2022.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Chandan Babu R <chandan.babu@oracle.com>
2 years agodesign: update group quota inode information for v5 filesystems
Darrick J. Wong [Tue, 17 Jan 2023 20:33:50 +0000 (12:33 -0800)]
design: update group quota inode information for v5 filesystems

Fix a few out of date statements about the group quota inode field on v5
filesystems.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Chandan Babu R <chandan.babu@oracle.com>
2 years agoxfsdocs: add epub output
Csaba Henk [Tue, 17 Jan 2023 17:47:40 +0000 (09:47 -0800)]
xfsdocs: add epub output

Epub is a widespread open format for standalone reflowable
electronic documents, and it's a core feature of Asciidoc tooling
to be able to produce it, so we can get it "for free".

Signed-off-by: Csaba Henk <chenk@redhat.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
3 years agoxfsdocs: fix a minor levelling problem 2022-07-21
Darrick J. Wong [Thu, 21 Jul 2022 04:24:04 +0000 (21:24 -0700)]
xfsdocs: fix a minor levelling problem

Fix these incorrect heading levels.

asciidoc: WARNING: allocation_groups.asciidoc: line 1089: section title out of sequence: expected level 3, got level 4
asciidoc: WARNING: allocation_groups.asciidoc: line 1218: section title out of sequence: expected level 3, got level 4

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
3 years agoxfsdocs: fix extent record format image
Xiaole He [Thu, 21 Jul 2022 04:18:02 +0000 (21:18 -0700)]
xfsdocs: fix extent record format image

The image of 'design/XFS_Filesystem_Structure/images/31.png' depicts
extent record format as below:

+----+-------------------------+---------------------+------------+
|flag|bits 72 to 126(54)       |bits 21 to 72(52)    |bit 0-20(21)|
|    |logical file block offset|absolute block number|# blocks    |
+----+-------------------------+---------------------+------------+

There has a typo for 'logical file block offset' part, it writes 'bits
72 to 126', but it should be 'bits 73 to 126' because the 72st bit is
consumed by 'absolute block number' part, this patch fix this problem
and redrawing the image as below:

+---------+-------------------------+---------------------+----------+
|bits[127]|bits[73-126]             |bits[21-72]          |bits[0-20]|
+---------+-------------------------+---------------------+----------+
|flag     |logical file block offset|absolute block number|# blocks  |
+---------+-------------------------+---------------------+----------+

Signed-off-by: Xiaole He <hexiaole@kylinos.cn>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
[djwong: convert the raw table into asciidoc and remove the png]
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
3 years agoxfsdocs: fix inode timestamps lower limit value 2022-07-18
Xiaole He [Mon, 18 Jul 2022 17:13:37 +0000 (10:13 -0700)]
xfsdocs: fix inode timestamps lower limit value

In kernel source tree 'fs/xfs/libxfs/xfs_format.h', there defined inode
timestamps as 'xfs_legacy_timestamp' if the 'bigtime' feature disabled,
and also defined the min and max time constants 'XFS_LEGACY_TIME_MIN'
and 'XFS_LEGACY_TIME_MAX' as below:

/* fs/xfs/libxfs/xfs_format.h begin */
struct xfs_legacy_timestamp {
        __be32          t_sec;          /* timestamp seconds */
        __be32          t_nsec;         /* timestamp nanoseconds */
};
 #define XFS_LEGACY_TIME_MIN     ((int64_t)S32_MIN)
 #define XFS_LEGACY_TIME_MAX     ((int64_t)S32_MAX)
/* fs/xfs/libxfs/xfs_format.h end */
/* include/linux/limits.h begin */
 #define U32_MAX         ((u32)~0U)
 #define S32_MAX         ((s32)(U32_MAX >> 1))
 #define S32_MIN         ((s32)(-S32_MAX - 1))
/* include/linux/limits.h end */

When the 't_sec' and 't_nsec' are 0, the time value it represents is
1970-01-01 00:00:00 UTC, the 'XFS_LEGACY_TIME_MIN', that is -(2^31),
represents the min second offset relative to the
1970-01-01 00:00:00 UTC, it can be converted to human-friendly time
value by 'date' command:

/* command begin */
[root@~]# date --utc -d '@0' +'%Y-%m-%d %H:%M:%S'
1970-01-01 00:00:00
[root@~]# date --utc -d "@`echo '-(2^31)'|bc`" +'%Y-%m-%d %H:%M:%S'
1901-12-13 20:45:52
[root@~]#
/* command end */

That is, the min time value is 1901-12-13 20:45:52 UTC, but the
'design/XFS_Filesystem_Structure/timestamps.asciidoc' write the min
time value as 'The smalle st date this format can represent is
20:45:52 UTC on December 31st', there should be a typo, and this patch
correct 2 places of wrong min time value, from '31st' to '13st'.

Signed-off-by: Xiaole He <hexiaole@kylinos.cn>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
3 years agodesign: fix computation of buffer log item bitmap size 2022-01-19
Darrick J. Wong [Wed, 10 Nov 2021 01:38:57 +0000 (17:38 -0800)]
design: fix computation of buffer log item bitmap size

Wengang Wang was trying to work through a buffer log item by consulting
the ondisk format documentation, and was confused by the formula given
in section 14.3.14 regarding the size of blf_data_map, aka the dirty
bitmap for buffer log items.  We noticed that the documentation doesn't
match what the kernel actually does, so let's fix this.

Reported-by: Wengang Wang <wen.gang.wang@oracle.com>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Chandan Babu R <chandan.babu@oracle.com>
4 years agodesign: document changes for the bigtime feature 2021-04-09
Darrick J. Wong [Fri, 26 Mar 2021 02:46:59 +0000 (19:46 -0700)]
design: document changes for the bigtime feature

Document the changes to the ondisk format when we enable the bigtime
feature.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
4 years agodesign: document the new inode btree counter feature
Darrick J. Wong [Fri, 26 Mar 2021 02:46:59 +0000 (19:46 -0700)]
design: document the new inode btree counter feature

Update the ondisk format documentation to discuss the inode btree
counter feature.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
4 years agoxfsdocs: Small fix to correct first free inode to be 5847 not 5856.
Lukas Herbolt [Fri, 26 Mar 2021 02:47:00 +0000 (19:47 -0700)]
xfsdocs: Small fix to correct first free inode to be 5847 not 5856.

Fix a minor math error in the demonstration of inode btrees.

Signed-off-by: Lukas Herbolt <lukas@herbolt.com>
[djwong: tweak the commit message a bit]
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
5 years agoxfsdocs: capture some information about dirs vs. attrs and how they use dabtrees 2020-05-12
Darrick J. Wong [Wed, 8 Apr 2020 22:52:53 +0000 (15:52 -0700)]
xfsdocs: capture some information about dirs vs. attrs and how they use dabtrees

Dave and I had a short discussion about whether or not xattr trees
needed to have the same free space tracking that directories have, and
a comparison of how each of the two metadata types interact with
dabtrees resulted.  I've reworked this a bit to make it flow better as a
book chapter, so here we go.

Original-mail: https://lore.kernel.org/linux-xfs/20200404085203.1908-1-chandanrlinux@gmail.com/T/#mdd12ad06cf5d635772cc38946fc5b22e349e136f
Originally-from: Dave Chinner <david@fromorbit.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Bill O'Donnell <billodo@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
6 years agoxfs: design: Fix typo 2019-08-01
Sheriff Esseson [Wed, 31 Jul 2019 15:39:14 +0000 (08:39 -0700)]
xfs: design: Fix typo

Replace "possible" with "possibly" and improve the flow of the phrase.

Signed-off-by: Sheriff Esseson <sheriffesseson@gmail.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
6 years agoFix typos in xfs-documentation 2019-06-18
Andrea Gelmini [Tue, 18 Jun 2019 17:05:23 +0000 (10:05 -0700)]
Fix typos in xfs-documentation

Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
[darrick: change 'gleaned' to 'collected' in refcount docs]
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
7 years agodesign: Document project quota inode 2018-09-18
Marco Benatto [Tue, 7 Aug 2018 15:11:04 +0000 (08:11 -0700)]
design: Document project quota inode

A project quota inode was introduced into V5 superblock allowing
project quotas and group quotas to be used simultaneously. However
on "Quota Inodes" section we still mention it's not possible to
use project and group quotas at sametime.

This patch documents this behavior for V5 and later superblocks,
while keeps documented the old behavior for earlier versions.

Signed-off-by: Marco Benatto <mbenatto@redhat.com>
[darrick: rephrase slightly]
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
7 years agodesign: merge both metadata integrity chapters 2018-07-10
Darrick J. Wong [Wed, 9 May 2018 18:38:33 +0000 (11:38 -0700)]
design: merge both metadata integrity chapters

We don't need to have two chapters on metadata integrity, so merge them.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
7 years agodesign: incorporate self-describing metadata design doc
Darrick J. Wong [Wed, 9 May 2018 18:36:15 +0000 (11:36 -0700)]
design: incorporate self-describing metadata design doc

Incorporate the self-describing metadata doc into the design book.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
7 years agodesign: incorporate the delayed logging design doc
Darrick J. Wong [Wed, 9 May 2018 18:29:42 +0000 (11:29 -0700)]
design: incorporate the delayed logging design doc

Move the delayed logging design documentation into the design book.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
7 years agodesign: rename disk structures book
Darrick J. Wong [Wed, 9 May 2018 18:25:45 +0000 (11:25 -0700)]
design: rename disk structures book

Since the book already has chapters describing fundamental XFS
algorithms, update the title to reflect this.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
7 years agoxfsdocs: clarify log item header structure 2018-01-05
Darrick J. Wong [Wed, 29 Nov 2017 01:47:27 +0000 (17:47 -0800)]
xfsdocs: clarify log item header structure

Make it more explicit that each log item has to start with a type code
and size, except for transaction headers.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
7 years agoxfsdocs: fix some small discrepancies with libxfs
Darrick J. Wong [Wed, 18 Oct 2017 21:50:40 +0000 (14:50 -0700)]
xfsdocs: fix some small discrepancies with libxfs

Fix some small discrepancies between the current libxfs code and this doc.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
7 years agoxfsdocs: fix description of directory free block nvalid and nused header fields
Darrick J. Wong [Wed, 18 Oct 2017 04:55:49 +0000 (21:55 -0700)]
xfsdocs: fix description of directory free block nvalid and nused header fields

The descriptions of the directory free block header's nvalid and nused
fields are backwards, so flip them.  While we're fixing them, augment
the description to relate it to the rest of the directory structure.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
7 years agoxfs: move dir-attr btree sections to a separate chapter
Darrick J. Wong [Thu, 10 Aug 2017 21:58:22 +0000 (14:58 -0700)]
xfs: move dir-attr btree sections to a separate chapter

Instead of scattering dabtree documentation across two sections underneath
the directory chapter, just give them a separate chapter.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Acked-by: Dave Chinner <dchinner@redhat.com>
8 years agodocs: add missing sb_qflags values
Darrick J. Wong [Fri, 16 Jun 2017 15:33:59 +0000 (08:33 -0700)]
docs: add missing sb_qflags values

We're missing a few of the sb_qflags values, so add them to the docs.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
8 years agodocs: fix mailing list
Darrick J. Wong [Thu, 15 Jun 2017 23:47:53 +0000 (16:47 -0700)]
docs: fix mailing list

Fix the mailing list since it's way out of date.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
8 years agodocs: record the metadump file format
Darrick J. Wong [Mon, 12 Jun 2017 00:31:14 +0000 (17:31 -0700)]
docs: record the metadump file format

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
8 years agodocs: clarify what the ATTRBIT and ATTR2BIT feature flags do
Darrick J. Wong [Tue, 10 Jan 2017 22:51:52 +0000 (14:51 -0800)]
docs: clarify what the ATTRBIT and ATTR2BIT feature flags do

It would seem that the disk format doesn't actually change depending on
ATTRBIT and ATTR2BIT.  The key difference is that ATTR2BIT (without the
'noattr2' mount option) allows di_forkoff to change depending on how
much space the attr fork needs, whereas ATTRBIT (without ATTR2BIT or
the 'attr2' mount option) does not allow di_forkoff to change.

In other words, at least one of the bits must be set if there are
extended attributes, but between the two bits the only difference is a
change in the default di_forkoff adjustment behaviors.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
8 years agodocs: enumerate possible directory ftype values
Darrick J. Wong [Mon, 19 Dec 2016 22:06:56 +0000 (14:06 -0800)]
docs: enumerate possible directory ftype values

We don't actually list the ftype constants, so do that.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
8 years agodocs: update refcount btree to reflect new cow staging extent policy
Darrick J. Wong [Tue, 18 Oct 2016 01:26:51 +0000 (18:26 -0700)]
docs: update refcount btree to reflect new cow staging extent policy

We now record the extents being used to stage a copy on write operation
in the refcount btree with the high bit of rc_startblock set and a
reference count of 1.  Setting the high bit helps us reduce CoW GC time
at mount by moving all the records to the right side of the tree.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
8 years agodocs: fix a typo in the AGF section of the disk format doc
Darrick J. Wong [Wed, 23 Nov 2016 06:57:11 +0000 (22:57 -0800)]
docs: fix a typo in the AGF section of the disk format doc

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
9 years agoxfsdocs: document the realtime reverse mapping btree
Darrick J. Wong [Thu, 8 Sep 2016 03:33:43 +0000 (13:33 +1000)]
xfsdocs: document the realtime reverse mapping btree

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoxfsdocs: document refcount btree and reflink
Darrick J. Wong [Thu, 8 Sep 2016 03:33:31 +0000 (13:33 +1000)]
xfsdocs: document refcount btree and reflink

Document the reference count btree and talk a little bit about how
the reflink feature uses it.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoxfsdocs: reverse-mapping btree documentation
Darrick J. Wong [Thu, 8 Sep 2016 03:33:23 +0000 (13:33 +1000)]
xfsdocs: reverse-mapping btree documentation

Add chapters on the operation of the reverse mapping btree and future
things we could do with rmap data.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoxfsdocs: move the discussions of short and long format btrees to a separate chapter
Darrick J. Wong [Thu, 8 Sep 2016 03:33:12 +0000 (13:33 +1000)]
xfsdocs: move the discussions of short and long format btrees to a separate chapter

Move the discussion of short and long format btrees into a separate
chapter.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoxfsdocs: update the on-disk format with changes for Linux 4.5
Darrick J. Wong [Thu, 8 Sep 2016 03:33:02 +0000 (13:33 +1000)]
xfsdocs: update the on-disk format with changes for Linux 4.5

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoxfsdocs: document known testing procedures
Darrick J. Wong [Thu, 8 Sep 2016 03:32:48 +0000 (13:32 +1000)]
xfsdocs: document known testing procedures

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agojournaling_log: fix some typos in the section about EFDs
Darrick J. Wong [Thu, 8 Sep 2016 03:32:35 +0000 (13:32 +1000)]
journaling_log: fix some typos in the section about EFDs

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agomove directory chapter before xattr chapter
Darrick J. Wong [Mon, 4 Jan 2016 23:32:24 +0000 (10:32 +1100)]
move directory chapter before xattr chapter

Since the chapter on directories introduces data structures that are
referenced in the xattr chapter, the book should discuss directories first.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agodocument the sparse inodes feature
Darrick J. Wong [Mon, 4 Jan 2016 23:32:07 +0000 (10:32 +1100)]
document the sparse inodes feature

Document the new sparse inodes feature and how it affects the inobt records.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agodocument magic numbers and theoretical limits
Darrick J. Wong [Mon, 4 Jan 2016 23:31:59 +0000 (10:31 +1100)]
document magic numbers and theoretical limits

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoadd a chapter discussing v5 disk format
Darrick J. Wong [Mon, 4 Jan 2016 23:31:50 +0000 (10:31 +1100)]
add a chapter discussing v5 disk format

Add a chapter to give an overview of the enhanced metadata integrity
fields present on a v5 filesystem.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoadd documentation of v5 fields
Darrick J. Wong [Mon, 4 Jan 2016 23:31:41 +0000 (10:31 +1100)]
add documentation of v5 fields

Document the new fields and data structures added in XFS v5 filesystems.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agodocument the operation of the realtime device and inodes
Darrick J. Wong [Mon, 4 Jan 2016 23:31:34 +0000 (10:31 +1100)]
document the operation of the realtime device and inodes

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agodocument the xfs log format
Darrick J. Wong [Mon, 4 Jan 2016 23:31:24 +0000 (10:31 +1100)]
document the xfs log format

Discuss the on-disk log format and provide an example of walking through
the log with xfs_logprint.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agointroduce XFS at a high level
Darrick J. Wong [Mon, 4 Jan 2016 23:31:13 +0000 (10:31 +1100)]
introduce XFS at a high level

Provide a quick overview of the history and design goals of XFS, and
specify what exactly this documentation aims to do.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agofix quoted text markings
Darrick J. Wong [Mon, 4 Jan 2016 23:31:02 +0000 (10:31 +1100)]
fix quoted text markings

Use asciidoc quotes for quoted strings.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoadd missing xfs_db examples
Darrick J. Wong [Mon, 4 Jan 2016 23:30:53 +0000 (10:30 +1100)]
add missing xfs_db examples

Fix some of the more egregious missing xfs_db examples so that the reader
can appreciate what the data structures look like.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoadd missing structure field definitions
Darrick J. Wong [Mon, 4 Jan 2016 23:30:44 +0000 (10:30 +1100)]
add missing structure field definitions

Add missing field definitions for various data structures.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agofix various errors and missing bits in the text
Darrick J. Wong [Mon, 4 Jan 2016 23:30:34 +0000 (10:30 +1100)]
fix various errors and missing bits in the text

Fix typos and grammatical errors in the text.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agomake example section titles consistent
Darrick J. Wong [Mon, 4 Jan 2016 23:30:26 +0000 (10:30 +1100)]
make example section titles consistent

Make the section titles of the examples consistently formatted.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoupdate types
Darrick J. Wong [Mon, 4 Jan 2016 23:30:11 +0000 (10:30 +1100)]
update types

Update the common data types to reflect modern XFS source.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agodelete images of hex dumps
Darrick J. Wong [Mon, 4 Jan 2016 23:30:01 +0000 (10:30 +1100)]
delete images of hex dumps

The images of xfs_db sessions were translated to asciidoc, so drop the
unnecessary PNG and SVG files.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoconvert images to text
Darrick J. Wong [Mon, 4 Jan 2016 23:29:47 +0000 (10:29 +1100)]
convert images to text

Convert images that are purely screenshots of xfs_db sessions to text,
to reduce the document size and format better.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoconvert html entities to regular characters
Darrick J. Wong [Mon, 4 Jan 2016 23:29:31 +0000 (10:29 +1100)]
convert html entities to regular characters

Convert HTML entities back to regular characters, since this is now ASCII.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agorestore the old rendering of structure field definitions
Darrick J. Wong [Mon, 4 Jan 2016 23:29:19 +0000 (10:29 +1100)]
restore the old rendering of structure field definitions

Restore the rendering of the on-disk struct fields to resemble that of
the old SGI book, with bold field names on one line and the
description indented below.  This is a lot more readable than letting
the whole field and description run together as one long line.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agoupdate book subtitles and headings
Darrick J. Wong [Mon, 4 Jan 2016 23:28:55 +0000 (10:28 +1100)]
update book subtitles and headings

The current subtitle is redundant and since this is the third edition
(the second ed. came out in 2006) we might as well note that.  Update
some of the headings to make it clear that we're talking about disk
format and not much else.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
9 years agofix asciidoc confusion w.r.t. include file newline at EOF
Darrick J. Wong [Mon, 4 Jan 2016 23:28:38 +0000 (10:28 +1100)]
fix asciidoc confusion w.r.t. include file newline at EOF

Space each include one line apart so that asciidoc knows that each
section has ended at included file's EOF.  This prevents it from
spewing horribly confused XML that blows up xmllint if each included
file doesn't itself end with a blank line.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
10 years agoSMR: Updates from LSFMM/Vault
Dave Chinner [Mon, 16 Mar 2015 05:16:09 +0000 (16:16 +1100)]
SMR: Updates from LSFMM/Vault

After a week of tallking about SMR and thinking about the issues
raised in the original document and some of the solutions that
have arisen from LSFMM and Vault, there are some updates that need
to be made.

- outer zone is "conventional media recording" (CMR)
- some drives have much more CMR than others
- SMR architecture is targetted at single drives: no RAID!
- SMR architecture is targetted at unparitioned drives: fs only!
- CMR region is large enough for journal
- clarified the hint to vendors for "hybrid" SMR drives
- implications of 256MB zones made clear
  - /.zones/ needs to be heirarchical
  - zone groups are required for management of locality
  - zone inodes and bitmaps need to be reclaimable
- Cleaner updated for zone group awareness
- Inode data fork reverse mapping btree architecture added
- potential concurrent allocation/write issue solution added

Signed-off-by: Dave Chinner <dchinner@redhat.com>
10 years agodesign: XFS Host Aware SMR
Dave Chinner [Mon, 16 Mar 2015 04:35:59 +0000 (15:35 +1100)]
design: XFS Host Aware SMR

First pass at filesystem architecture needed to support  host aware
SMR Devices.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
11 years agoadmin: add basic performance tuning document
Dave Chinner [Mon, 31 Mar 2014 20:47:32 +0000 (07:47 +1100)]
admin: add basic performance tuning document

Take the basic XFS filesystem tuning section from the RHEL 6
performance tuning guide, convert it to asciidoc and prepare it for
being expanded.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
11 years agodoc: add self describing metadata design
Dave Chinner [Tue, 11 Feb 2014 08:45:31 +0000 (19:45 +1100)]
doc: add self describing metadata design

From: Dave Chinner <dchinner@redhat.com>

Pull the self describing metadata doc across from the kernel
Documentation/ directory and convert it to asciidoc format.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
11 years agodoc: import XFS Filesystem Structure documentation
Dave Chinner [Tue, 11 Feb 2014 05:09:16 +0000 (16:09 +1100)]
doc: import XFS Filesystem Structure documentation

This is pulled in from the xml format documents that are present in
git://git.kernel.org/pub/scm/fs/xfs/xfsdocs-xml-dev.git. They are
converted to asciidoc format and a makefile infrastructure is built
around the newly imported design documentation.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
11 years agodoc: use a2x to build targets
Dave Chinner [Tue, 4 Feb 2014 06:20:37 +0000 (17:20 +1100)]
doc: use a2x to build targets

Use the a2x toolchain wrapper to convert the asciidoc via docbook
formats. This allows for asciidoc book format output, automatci
generation of table of contents and a whole raft of documentation
target formats.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
11 years agoXFS design documentation
Dave Chinner [Tue, 4 Feb 2014 06:20:25 +0000 (17:20 +1100)]
XFS design documentation

All technical documentation relating to the design and architecture
of the XFS filesystem will end up in the design/ directory. As a
first step, bring the delayed logging design documentation in the
kernel directory over and convert it to asciidoc format.

This gives us a build target to start adding makefile infrastructure
around to build the documentations. Initially, just start with
generating PDF format documentation.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
11 years agoreadme: initial project description
Dave Chinner [Tue, 4 Feb 2014 06:20:08 +0000 (17:20 +1100)]
readme: initial project description

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
11 years agoInitial commit
Dave Chinner [Mon, 3 Feb 2014 05:37:11 +0000 (16:37 +1100)]
Initial commit