From: Damien Le Moal <Damien.LeMoal@wdc.com>
To: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>,
Linux Doc Mailing List <linux-doc@vger.kernel.org>
Cc: Jonathan Corbet <corbet@lwn.net>,
"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
Naohiro Aota <Naohiro.Aota@wdc.com>,
Johannes Thumshirn <jth@kernel.org>
Subject: Re: [PATCH 44/44] docs: filesystems: convert zonefs.txt to ReST
Date: Tue, 18 Feb 2020 03:46:32 +0000 [thread overview]
Message-ID: <BYAPR04MB581677BD8AB65AFEE14E50DFE7110@BYAPR04MB5816.namprd04.prod.outlook.com> (raw)
In-Reply-To: 42a7cfcd19f6b904a9a3188fd4af71bed5050052.1581955849.git.mchehab+huawei@kernel.org
On 2020/02/18 1:12, Mauro Carvalho Chehab wrote:
> - Add a SPDX header;
> - Add a document title;
> - Some whitespace fixes and new line breaks;
> - Mark literal blocks as such;
> - Add it to filesystems/index.rst.
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Acked-by: Damien Le Moal <damien.lemoal@wdc.com>
> ---
> Documentation/filesystems/index.rst | 1 +
> .../filesystems/{zonefs.txt => zonefs.rst} | 106 ++++++++++--------
> 2 files changed, 58 insertions(+), 49 deletions(-)
> rename Documentation/filesystems/{zonefs.txt => zonefs.rst} (90%)
>
> diff --git a/Documentation/filesystems/index.rst b/Documentation/filesystems/index.rst
> index ec03cb4d7353..53f46a88e6ec 100644
> --- a/Documentation/filesystems/index.rst
> +++ b/Documentation/filesystems/index.rst
> @@ -95,3 +95,4 @@ Documentation for filesystem implementations.
> udf
> virtiofs
> vfat
> + zonefs
> diff --git a/Documentation/filesystems/zonefs.txt b/Documentation/filesystems/zonefs.rst
> similarity index 90%
> rename from Documentation/filesystems/zonefs.txt
> rename to Documentation/filesystems/zonefs.rst
> index 935bf22031ca..7e733e751e98 100644
> --- a/Documentation/filesystems/zonefs.txt
> +++ b/Documentation/filesystems/zonefs.rst
> @@ -1,4 +1,8 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +
> +================================================
> ZoneFS - Zone filesystem for Zoned block devices
> +================================================
>
> Introduction
> ============
> @@ -29,6 +33,7 @@ Zoned block devices
> Zoned storage devices belong to a class of storage devices with an address
> space that is divided into zones. A zone is a group of consecutive LBAs and all
> zones are contiguous (there are no LBA gaps). Zones may have different types.
> +
> * Conventional zones: there are no access constraints to LBAs belonging to
> conventional zones. Any read or write access can be executed, similarly to a
> regular block device.
> @@ -158,6 +163,7 @@ Format options
> --------------
>
> Several optional features of zonefs can be enabled at format time.
> +
> * Conventional zone aggregation: ranges of contiguous conventional zones can be
> aggregated into a single larger file instead of the default one file per zone.
> * File ownership: The owner UID and GID of zone files is by default 0 (root)
> @@ -249,7 +255,7 @@ permissions.
> Further action taken by zonefs I/O error recovery can be controlled by the user
> with the "errors=xxx" mount option. The table below summarizes the result of
> zonefs I/O error processing depending on the mount option and on the zone
> -conditions.
> +conditions::
>
> +--------------+-----------+-----------------------------------------+
> | | | Post error state |
> @@ -275,6 +281,7 @@ conditions.
> +--------------+-----------+-----------------------------------------+
>
> Further notes:
> +
> * The "errors=remount-ro" mount option is the default behavior of zonefs I/O
> error processing if no errors mount option is specified.
> * With the "errors=remount-ro" mount option, the change of the file access
> @@ -302,6 +309,7 @@ Mount options
> zonefs define the "errors=<behavior>" mount option to allow the user to specify
> zonefs behavior in response to I/O errors, inode size inconsistencies or zone
> condition chages. The defined behaviors are as follow:
> +
> * remount-ro (default)
> * zone-ro
> * zone-offline
> @@ -325,78 +333,78 @@ Examples
> --------
>
> The following formats a 15TB host-managed SMR HDD with 256 MB zones
> -with the conventional zones aggregation feature enabled.
> +with the conventional zones aggregation feature enabled::
>
> -# mkzonefs -o aggr_cnv /dev/sdX
> -# mount -t zonefs /dev/sdX /mnt
> -# ls -l /mnt/
> -total 0
> -dr-xr-xr-x 2 root root 1 Nov 25 13:23 cnv
> -dr-xr-xr-x 2 root root 55356 Nov 25 13:23 seq
> + # mkzonefs -o aggr_cnv /dev/sdX
> + # mount -t zonefs /dev/sdX /mnt
> + # ls -l /mnt/
> + total 0
> + dr-xr-xr-x 2 root root 1 Nov 25 13:23 cnv
> + dr-xr-xr-x 2 root root 55356 Nov 25 13:23 seq
>
> The size of the zone files sub-directories indicate the number of files
> existing for each type of zones. In this example, there is only one
> conventional zone file (all conventional zones are aggregated under a single
> -file).
> +file)::
>
> -# ls -l /mnt/cnv
> -total 137101312
> --rw-r----- 1 root root 140391743488 Nov 25 13:23 0
> + # ls -l /mnt/cnv
> + total 137101312
> + -rw-r----- 1 root root 140391743488 Nov 25 13:23 0
>
> -This aggregated conventional zone file can be used as a regular file.
> +This aggregated conventional zone file can be used as a regular file::
>
> -# mkfs.ext4 /mnt/cnv/0
> -# mount -o loop /mnt/cnv/0 /data
> + # mkfs.ext4 /mnt/cnv/0
> + # mount -o loop /mnt/cnv/0 /data
>
> The "seq" sub-directory grouping files for sequential write zones has in this
> -example 55356 zones.
> +example 55356 zones::
>
> -# ls -lv /mnt/seq
> -total 14511243264
> --rw-r----- 1 root root 0 Nov 25 13:23 0
> --rw-r----- 1 root root 0 Nov 25 13:23 1
> --rw-r----- 1 root root 0 Nov 25 13:23 2
> -...
> --rw-r----- 1 root root 0 Nov 25 13:23 55354
> --rw-r----- 1 root root 0 Nov 25 13:23 55355
> + # ls -lv /mnt/seq
> + total 14511243264
> + -rw-r----- 1 root root 0 Nov 25 13:23 0
> + -rw-r----- 1 root root 0 Nov 25 13:23 1
> + -rw-r----- 1 root root 0 Nov 25 13:23 2
> + ...
> + -rw-r----- 1 root root 0 Nov 25 13:23 55354
> + -rw-r----- 1 root root 0 Nov 25 13:23 55355
>
> For sequential write zone files, the file size changes as data is appended at
> -the end of the file, similarly to any regular file system.
> +the end of the file, similarly to any regular file system::
>
> -# dd if=/dev/zero of=/mnt/seq/0 bs=4096 count=1 conv=notrunc oflag=direct
> -1+0 records in
> -1+0 records out
> -4096 bytes (4.1 kB, 4.0 KiB) copied, 0.00044121 s, 9.3 MB/s
> + # dd if=/dev/zero of=/mnt/seq/0 bs=4096 count=1 conv=notrunc oflag=direct
> + 1+0 records in
> + 1+0 records out
> + 4096 bytes (4.1 kB, 4.0 KiB) copied, 0.00044121 s, 9.3 MB/s
>
> -# ls -l /mnt/seq/0
> --rw-r----- 1 root root 4096 Nov 25 13:23 /mnt/seq/0
> + # ls -l /mnt/seq/0
> + -rw-r----- 1 root root 4096 Nov 25 13:23 /mnt/seq/0
>
> The written file can be truncated to the zone size, preventing any further
> -write operation.
> +write operation::
>
> -# truncate -s 268435456 /mnt/seq/0
> -# ls -l /mnt/seq/0
> --rw-r----- 1 root root 268435456 Nov 25 13:49 /mnt/seq/0
> + # truncate -s 268435456 /mnt/seq/0
> + # ls -l /mnt/seq/0
> + -rw-r----- 1 root root 268435456 Nov 25 13:49 /mnt/seq/0
>
> Truncation to 0 size allows freeing the file zone storage space and restart
> -append-writes to the file.
> +append-writes to the file::
>
> -# truncate -s 0 /mnt/seq/0
> -# ls -l /mnt/seq/0
> --rw-r----- 1 root root 0 Nov 25 13:49 /mnt/seq/0
> + # truncate -s 0 /mnt/seq/0
> + # ls -l /mnt/seq/0
> + -rw-r----- 1 root root 0 Nov 25 13:49 /mnt/seq/0
>
> Since files are statically mapped to zones on the disk, the number of blocks of
> -a file as reported by stat() and fstat() indicates the size of the file zone.
> +a file as reported by stat() and fstat() indicates the size of the file zone::
>
> -# stat /mnt/seq/0
> - File: /mnt/seq/0
> - Size: 0 Blocks: 524288 IO Block: 4096 regular empty file
> -Device: 870h/2160d Inode: 50431 Links: 1
> -Access: (0640/-rw-r-----) Uid: ( 0/ root) Gid: ( 0/ root)
> -Access: 2019-11-25 13:23:57.048971997 +0900
> -Modify: 2019-11-25 13:52:25.553805765 +0900
> -Change: 2019-11-25 13:52:25.553805765 +0900
> - Birth: -
> + # stat /mnt/seq/0
> + File: /mnt/seq/0
> + Size: 0 Blocks: 524288 IO Block: 4096 regular empty file
> + Device: 870h/2160d Inode: 50431 Links: 1
> + Access: (0640/-rw-r-----) Uid: ( 0/ root) Gid: ( 0/ root)
> + Access: 2019-11-25 13:23:57.048971997 +0900
> + Modify: 2019-11-25 13:52:25.553805765 +0900
> + Change: 2019-11-25 13:52:25.553805765 +0900
> + Birth: -
>
> The number of blocks of the file ("Blocks") in units of 512B blocks gives the
> maximum file size of 524288 * 512 B = 256 MB, corresponding to the device zone
>
--
Damien Le Moal
Western Digital Research
prev parent reply other threads:[~2020-02-18 3:46 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 ` [PATCH 39/44] docs: filesystems: convert sysv-fs.txt " Mauro Carvalho Chehab
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 [this message]
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=BYAPR04MB581677BD8AB65AFEE14E50DFE7110@BYAPR04MB5816.namprd04.prod.outlook.com \
--to=damien.lemoal@wdc.com \
--cc=Naohiro.Aota@wdc.com \
--cc=corbet@lwn.net \
--cc=jth@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=mchehab+huawei@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).