zfs/man/man8
Brian Atkinson 71ce314930 Updating based on PR Feedback(4)
1. When testing out installing a VM with virtual manager on Linux and a
   dataset with direct=always, there an ASSERT failure in
   abd_alloc_from_pages(). Originally zfs_setup_direct() did an
   alignment check of the UIO using SPA_MINBLOCKSIZE with
   zfs_uio_aligned(). The idea behind this was maybe the page alignment
   restriction could be changed to use ashift as the alignment check in
   the future. Howver, this diea never came to be. The alignment
   restrictions for Direct I/O are based on PAGE_SIZE. Updating the
   check zfs_setup_direct() for the UIO to use PAGE_SIZE fixed the
   issue.
2. Updated other alignment check in dmu_read_impl() to also use
   PAGE_SIZE.
3. As a consequence of updating the UIO alignment checks the ZTS test
   case dio_unaligned_filesize began to fail. This is because there was
   no way to detect reading past the end of the file before issue EINVAL
   in the ZPL and VOPs layers in FreeBSD. This was resolved by moving
   zfs_setup_direct() into zfs_write() and zfs_read(). This allows for
   other error checking to take place before checking any Direct I/O
   limitations. Updating the call site of zfs_setup_direct() did require
   a bit of changes to the logic in that function. In particular Direct
   I/O can just be avoid altogether depending on the checks in
   zfs_setup_direct() and there is no reason to return EAGAIN at all.
4. After moving zfs_setup_direct() into zfs_write() and zfs_read(),
   there was no reason to call zfs_check_direct_enabled() in the ZPL
   layer in Linux or in the VNOPS layer of FreeBSD. This function was
   completely removed. This allowed for much of the code in both those
   layers to return to their original code.
5. Upated the checksum verify module parameter for Direct I/O writes to
   only be a boolean and return EIO in the event a checksum verify
   failure occurs. By default, this module parameter is set to 1 for
   Linux and 0 for FreeBSD. The module parameter has been changed to
   zfs_vdev_direct_write_verify. There are still counters on the
   top-level VDEV for checksum verify failures, but this could be
   removed. It would still be good to to leave the ZED event dio_verify
   for checksum failures as a notification that an application was
   manipulating the contents of a buffer after issuing that buffer with
   for I/O using Direct I/O. As part of this cahnge, man pages were
   updated, the ZTS test case dio_writy_verify was updated, and all
   comments relating to the module parameter were udpated as well.
6. Updated comments in dio_property ZTS test to properly reflect that
   stride_dd is being called with check_write and check_read.

Signed-off-by: Brian Atkinson <batkinson@lanl.gov>
2024-09-04 17:08:56 -06:00
..
.gitignore Add zfs_prepare_disk script for disk firmware install 2023-09-21 08:36:26 -07:00
fsck.zfs.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
mount.zfs.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_id.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zdb.8 Fix a mis-merge in the zdb man page (#16304) 2024-06-28 10:38:22 -07:00
zed.8.in Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-allow.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-bookmark.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-change-key.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-clone.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-create.8 zfs-create(8): ZFS for swap: caution, clarity 2023-06-02 11:25:13 -07:00
zfs-destroy.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-diff.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-get.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-groupspace.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-hold.8 Adds the `-p` option to `zfs holds` 2022-11-08 10:08:21 -08:00
zfs-inherit.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-jail.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-list.8 JSON output support for zfs list 2024-08-06 12:46:34 -07:00
zfs-load-key.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-mount-generator.8.in Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-mount.8 JSON output support zfs mount 2024-08-06 12:46:40 -07:00
zfs-program.8 Add zfs.sync.snapshot_rename 2022-09-02 13:31:19 -07:00
zfs-project.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-projectspace.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-promote.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-receive.8 Improve tests and update man page for healing recv 2023-03-15 10:34:10 -07:00
zfs-recv.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-redact.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-release.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-rename.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-rollback.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-send.8 libzfs: sendrecv: send_progress_thread: handle SIGINFO/SIGUSR1 2023-08-08 09:35:35 -07:00
zfs-set.8 JSON output support for zfs version and zfs get 2024-08-06 12:45:45 -07:00
zfs-share.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-snapshot.8 Update zfs-snapshot.8 2024-02-08 13:06:12 -08:00
zfs-unallow.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-unjail.8 Add FreeBSD jail support hooks 2019-12-11 11:58:37 -08:00
zfs-unload-key.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-unmount.8 Reorganize zfs(8) man page into sections 2019-11-12 11:17:40 -08:00
zfs-unzone.8 Add Linux namespace delegation support 2022-06-10 09:51:46 -07:00
zfs-upgrade.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-userspace.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zfs-wait.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs-zone.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs.8 JSON output support for zfs version and zfs get 2024-08-06 12:45:45 -07:00
zfs_ids_to_path.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_prepare_disk.8.in Add zfs_prepare_disk script for disk firmware install 2023-09-21 08:36:26 -07:00
zgenhostid.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zinject.8 Parallel pool import 2024-04-22 09:42:38 -07:00
zpool-add.8 Add ashift validation when adding devices to a pool 2024-03-29 13:15:56 -06:00
zpool-attach.8 RAID-Z expansion feature 2023-11-08 10:19:41 -08:00
zpool-checkpoint.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-clear.8 vdev probe to slow disk can stall mmp write checker 2024-04-29 14:35:53 -07:00
zpool-create.8 Remove unnecessary commas in zpool-create.8 2023-06-27 16:58:32 -07:00
zpool-ddtprune.8 Add DDT prune command 2024-09-04 14:17:02 -07:00
zpool-destroy.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-detach.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-events.8 Updating based on PR Feedback(4) 2024-09-04 17:08:56 -06:00
zpool-export.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zpool-get.8 JSON output support for zpool get 2024-08-06 12:47:00 -07:00
zpool-history.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-import.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-initialize.8 Add the ability to uninitialize 2023-05-18 10:02:20 -07:00
zpool-iostat.8 Update man pages to time(1) from time(2) 2024-01-29 09:44:08 -08:00
zpool-labelclear.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-list.8 JSON output support for zpool list 2024-08-06 12:47:04 -07:00
zpool-offline.8 zpool: Add slot power control, print power status 2023-12-21 10:53:16 -08:00
zpool-online.8 Reorganize zpool(8) man page into sections 2019-11-13 09:21:07 -08:00
zpool-prefetch.8 ddt: add support for prefetching tables into the ARC 2024-07-26 09:16:18 -07:00
zpool-reguid.8 zpool: Provide GUID to zpool-reguid(8) with -g (#16239) 2024-08-26 09:27:24 -07:00
zpool-remove.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zpool-reopen.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-replace.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-resilver.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zpool-scrub.8 Do not report bytes skipped by scan as issued. 2023-06-30 08:47:13 -07:00
zpool-set.8 Reorganize zpool(8) man page into sections 2019-11-13 09:21:07 -08:00
zpool-split.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zpool-status.8 Updating based on PR Feedback(4) 2024-09-04 17:08:56 -06:00
zpool-sync.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-trim.8 Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpool-upgrade.8 Ubuntu 22.04 integration: mancheck 2022-11-18 11:26:41 -08:00
zpool-wait.8 Update man pages to time(1) from time(2) 2024-01-29 09:44:08 -08:00
zpool.8 Add DDT prune command 2024-09-04 14:17:02 -07:00
zpool_influxdb.8 Consistentify miscellaneous style on remaining manpages 2021-06-09 14:35:53 -07:00
zstream.8 Add ability to recompress send streams with new compression algorithm 2022-11-10 15:23:46 -08:00
zstreamdump.8 zstreamdump: replace with link to zstream 2021-05-21 10:16:14 -07:00