mirror_zfs/module/zfs
MigeljanImeri 2a154b8484
Fix accounting error for pending sync IO ops in zpool iostat
Currently vdev_queue_class_length is responsible for checking how long
the queue length is, however, it doesn't check the length when a list
is used, rather it just returns whether it is empty or not. To fix this
I added a counter variable to vdev_queue_class to keep track of the sync
IO ops, and changed vdev_queue_class_length to reference this variable
instead.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: MigeljanImeri <ImeriMigel@gmail.com>
Closes #15478
2023-11-07 09:06:14 -08:00
..
abd.c RAIDZ: Use cache blocking during parity math 2023-10-30 14:54:27 -07:00
aggsum.c Remove bcopy(), bzero(), bcmp() 2022-03-15 15:13:42 -07:00
arc.c Unify arc_prune_async() code 2023-10-30 16:56:04 -07:00
blake3_zfs.c blake3: fix up bogus checksums in face of cpu migration 2023-05-01 17:21:27 -07:00
blkptr.c Remove bcopy(), bzero(), bcmp() 2022-03-15 15:13:42 -07:00
bplist.c Use list_remove_head() where possible. 2023-06-09 10:12:52 -07:00
bpobj.c Add explicit prefetches to bpobj_iterate(). 2023-07-21 11:50:48 -07:00
bptree.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
bqueue.c Batch enqueue/dequeue for bqueue 2023-01-10 13:39:22 -08:00
brt.c zfs_clone_range should return a descriptive error codes 2023-08-08 09:37:06 -07:00
btree.c btree: Implement faster binary search algorithm 2023-05-26 10:03:12 -07:00
dataset_kstats.c zil: Add some more statistics. 2023-05-25 13:51:53 -07:00
dbuf_stats.c Revert "Reduce dbuf_find() lock contention" 2022-09-22 12:59:41 -07:00
dbuf.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
ddt_zap.c Pack our DDT ZAPs a bit denser. 2023-06-30 09:42:02 -07:00
ddt.c ddt_addref: remove unnecessary phys fill when refcount is 0 2023-06-30 09:01:58 -07:00
dmu_diff.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
dmu_object.c zfs redact fails when dnodesize=auto 2023-02-16 09:23:39 -08:00
dmu_objset.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
dmu_recv.c Fix raw receive with different indirect block size. 2023-07-14 16:16:40 -07:00
dmu_redact.c Increase limit of redaction list by using spill block 2023-08-26 11:34:43 -07:00
dmu_send.c zdb: add -B option to generate backup stream 2023-06-05 11:54:42 -07:00
dmu_traverse.c Fix prefetching of indirect blocks while destroying 2023-03-24 10:20:07 -07:00
dmu_tx.c DMU: Do not pre-read holes during write 2023-10-11 16:37:21 -07:00
dmu_zfetch.c Add prefetch property 2023-10-24 11:00:07 -07:00
dmu.c ZIL: Avoid dbuf_read() before dmu_sync(). 2023-08-11 09:04:08 -07:00
dnode_sync.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
dnode.c Increase limit of redaction list by using spill block 2023-08-26 11:34:43 -07:00
dsl_bookmark.c Increase limit of redaction list by using spill block 2023-08-26 11:34:43 -07:00
dsl_crypt.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
dsl_dataset.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
dsl_deadlist.c Refactor dmu_prefetch(). 2023-08-07 13:54:41 -07:00
dsl_deleg.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
dsl_destroy.c Increase limit of redaction list by using spill block 2023-08-26 11:34:43 -07:00
dsl_dir.c Fix ENOSPC for extended quota 2023-09-28 14:10:07 -07:00
dsl_pool.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
dsl_prop.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
dsl_scan.c Do not request data L1 buffers on scan prefetch. 2023-07-20 09:10:04 -07:00
dsl_synctask.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
dsl_userhold.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
edonr_zfs.c Remove unused Edon-R variants 2023-03-14 15:59:58 -07:00
fm.c Use list_remove_head() where possible. 2023-06-09 10:12:52 -07:00
gzip.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
hkdf.c Remove bcopy(), bzero(), bcmp() 2022-03-15 15:13:42 -07:00
lz4_zfs.c Updated the lz4 decompressor 2022-01-07 10:36:49 -08:00
lz4.c lz4: Cherrypick fix for CVE-2021-3520 2022-01-12 16:14:36 -08:00
lzjb.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
metaslab.c Reduce number of metaslab preload taskq threads. 2023-10-06 09:04:00 -07:00
mmp.c Allow MMP to bypass waiting for other threads 2023-04-19 13:22:59 -07:00
multilist.c Cleanup: Specify unsignedness on things that should not be signed 2022-09-27 16:42:41 -07:00
objlist.c Implement Redacted Send/Receive 2019-06-19 09:48:12 -07:00
pathname.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
range_tree.c btree: Implement faster binary search algorithm 2023-05-26 10:03:12 -07:00
refcount.c Switch refcount tracking from lists to AVL-trees. 2023-06-14 08:02:27 -07:00
rrwlock.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
sa.c Cleanup: Remove constant comparisons reported by CodeQL 2023-03-08 13:51:46 -08:00
sha2_zfs.c Add generic implementation handling and SHA2 impl 2023-03-02 13:52:21 -08:00
skein_zfs.c Remove bcopy(), bzero(), bcmp() 2022-03-15 15:13:42 -07:00
spa_checkpoint.c Cleanup: 64-bit kernel module parameters should use fixed width types 2022-10-13 10:03:29 -07:00
spa_config.c Add mutex_enter_interruptible() for interruptible sleeping IOCTLs 2023-10-26 09:17:40 -07:00
spa_errlog.c Update the MOS directory on spa_upgrade_errlog() 2023-09-18 17:06:35 -07:00
spa_history.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
spa_log_spacemap.c Refactor dmu_prefetch(). 2023-08-07 13:54:41 -07:00
spa_misc.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
spa_stats.c Cleanup: Specify unsignedness on things that should not be signed 2022-09-27 16:42:41 -07:00
spa.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
space_map.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
space_reftree.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
THIRDPARTYLICENSE.cityhash OpenZFS 8484 - Implement aggregate sum and use for arc counters 2018-06-06 09:35:59 -07:00
THIRDPARTYLICENSE.cityhash.descrip OpenZFS 8484 - Implement aggregate sum and use for arc counters 2018-06-06 09:35:59 -07:00
txg.c Another set of vdev queue optimizations. 2023-06-27 09:09:48 -07:00
uberblock.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
unique.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_draid_rand.c Distributed Spare (dRAID) Feature 2020-11-13 13:51:51 -08:00
vdev_draid.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
vdev_indirect_births.c Remove bcopy(), bzero(), bcmp() 2022-03-15 15:13:42 -07:00
vdev_indirect_mapping.c Remove bcopy(), bzero(), bcmp() 2022-03-15 15:13:42 -07:00
vdev_indirect.c Don't emit cksum_{actual_expected} in ereport.fs.zfs.checksum events 2023-07-21 11:49:26 -07:00
vdev_initialize.c Add the ability to uninitialize 2023-05-18 10:02:20 -07:00
vdev_label.c Report ashift of L2ARC devices in zdb 2023-10-02 16:57:09 -07:00
vdev_mirror.c Improve too large physical ashift handling 2022-09-08 10:30:53 -07:00
vdev_missing.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_queue.c Fix accounting error for pending sync IO ops in zpool iostat 2023-11-07 09:06:14 -08:00
vdev_raidz_math_aarch64_neon_common.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_aarch64_neon.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_aarch64_neonx2.c Fix Clang 15 compilation errors 2022-11-30 13:46:26 -08:00
vdev_raidz_math_avx2.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_avx512bw.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_avx512f.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_impl.h RAIDZ: Use cache blocking during parity math 2023-10-30 14:54:27 -07:00
vdev_raidz_math_powerpc_altivec_common.h Linux ppc64le ieee128 compat: Do not redefine __asm on external headers 2023-01-13 10:58:58 -08:00
vdev_raidz_math_powerpc_altivec.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_scalar.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_sse2.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math_ssse3.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_raidz_math.c Miscellaneous FreBSD compilation bugfixes 2023-04-06 10:35:02 -07:00
vdev_raidz.c Don't emit cksum_{actual_expected} in ereport.fs.zfs.checksum events 2023-07-21 11:49:26 -07:00
vdev_rebuild.c Tweak rebuild in-flight hard limit 2023-09-29 08:21:25 -07:00
vdev_removal.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
vdev_root.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_trim.c Zpool can start allocating from metaslab before TRIMs have completed 2023-10-12 11:01:54 -07:00
vdev.c Set spa_ccw_fail_time=0 when expanding a vdev. 2023-10-20 10:30:32 -07:00
zap_leaf.c Cleanup: Remove constant comparisons reported by CodeQL 2023-03-08 13:51:46 -08:00
zap_micro.c btree: Implement faster binary search algorithm 2023-05-26 10:03:12 -07:00
zap.c Cleanup: Use NULL when doing NULL pointer comparisons 2023-01-12 16:00:37 -08:00
zcp_get.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
zcp_global.c OpenZFS 8600 - ZFS channel programs - snapshot 2018-02-08 15:29:24 -08:00
zcp_iter.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
zcp_set.c Support setting user properties in a channel program 2020-02-14 13:41:42 -08:00
zcp_synctask.c Add zfs.sync.snapshot_rename 2022-09-02 13:31:19 -07:00
zcp.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
zfeature.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_byteswap.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_chksum.c Add generic implementation handling and SHA2 impl 2023-03-02 13:52:21 -08:00
zfs_fm.c Don't emit cksum_{actual_expected} in ereport.fs.zfs.checksum events 2023-07-21 11:49:26 -07:00
zfs_fuid.c Use list_remove_head() where possible. 2023-06-09 10:12:52 -07:00
zfs_impl.c Add generic implementation handling and SHA2 impl 2023-03-02 13:52:21 -08:00
zfs_ioctl.c zvol: fix delayed update to block device ro entry 2023-10-31 09:50:38 -07:00
zfs_log.c ZIL: Cleanup sync and commit handling 2023-10-30 14:51:56 -07:00
zfs_onexit.c Use list_remove_head() where possible. 2023-06-09 10:12:52 -07:00
zfs_quota.c Revert "Do not persist user/group/project quota zap objects when unneeded" 2023-10-23 09:55:36 -07:00
zfs_ratelimit.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_replay.c Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
zfs_rlock.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_sa.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_vnops.c Fix block cloning between unencrypted and encrypted datasets 2023-10-31 13:49:41 -07:00
zil.c ZIO: Remove READY pipeline stage from root ZIOs 2023-10-25 15:22:25 -07:00
zio_checksum.c Don't emit cksum_{actual_expected} in ereport.fs.zfs.checksum events 2023-07-21 11:49:26 -07:00
zio_compress.c Skip memory allocation when compressing holes 2023-02-27 14:41:02 -08:00
zio_inject.c Cleanup: Switch to strlcpy from strncpy 2022-09-27 16:35:29 -07:00
zio.c Improve ZFS objset sync parallelism 2023-11-06 10:38:42 -08:00
zle.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zrlock.c Micro-optimize zrl_remove() 2022-11-29 09:26:03 -08:00
zthr.c Switch from _Noreturn to __attribute__((noreturn)) 2022-03-23 08:51:00 -07:00
zvol.c zvol: fix delayed update to block device ro entry 2023-10-31 09:50:38 -07:00