diff options
author | Steven Noonan <[email protected]> | 2018-07-24 09:33:56 -0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2018-07-24 09:33:56 -0700 |
commit | 863522b1f9235398f6c28ee3ab96f7d1c9088450 (patch) | |
tree | d47405222e26269ae0d6974e1cca474b0c3d10d8 /module/zfs/arc.c | |
parent | fda0f162171585891d7865bc7bd5e49255b4564b (diff) |
dsl_scan_scrub_cb: don't double-account non-embedded blocks
We were doing count_block() twice inside this function, once
unconditionally at the beginning (intended to catch the embedded block
case) and once near the end after processing the block.
The double-accounting caused the "zpool scrub" progress statistics in
"zpool status" to climb from 0% to 200% instead of 0% to 100%, and
showed double the I/O rate it was actually seeing.
This was apparently a regression introduced in commit 00c405b4b5e8,
which was an incorrect port of this OpenZFS commit:
https://github.com/openzfs/openzfs/commit/d8a447a7
Reviewed by: Thomas Caputi <[email protected]>
Reviewed by: Matt Ahrens <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed-by: George Melikov <[email protected]>
Signed-off-by: Steven Noonan <[email protected]>
Closes #7720
Closes #7738
Diffstat (limited to 'module/zfs/arc.c')
0 files changed, 0 insertions, 0 deletions