diff options
author | Pawel Jakub Dawidek <pjd@FreeBSD.org> | 2019-02-19 23:53:33 +0000 |
---|---|---|
committer | Pawel Jakub Dawidek <pjd@FreeBSD.org> | 2019-02-19 23:53:33 +0000 |
commit | 91853b85467d52b7bcce20e6a1664163f4b747f6 (patch) | |
tree | 191a4b97562ce4f1eed17b208ce81fe7c6364c6a /sys/cddl/contrib/opensolaris/uts/common | |
parent | 01e21ead901bd8272b962c99385e2f0300635a31 (diff) | |
download | src-91853b85467d52b7bcce20e6a1664163f4b747f6.tar.gz src-91853b85467d52b7bcce20e6a1664163f4b747f6.zip |
Simplify the code.
Notes
Notes:
svn path=/head/; revision=344320
Diffstat (limited to 'sys/cddl/contrib/opensolaris/uts/common')
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c index 1af200d83b1d..847fe19fb0d1 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c @@ -360,16 +360,13 @@ trim_map_write_start(zio_t *zio) return (B_FALSE); } - ts = avl_find(&tm->tm_queued_frees, &tsearch, NULL); - if (ts != NULL) { - /* - * Loop until all overlapping segments are removed. - */ - do { - trim_map_segment_remove(tm, ts, start, end); - ts = avl_find(&tm->tm_queued_frees, &tsearch, NULL); - } while (ts != NULL); + /* + * Loop until all overlapping segments are removed. + */ + while ((ts = avl_find(&tm->tm_queued_frees, &tsearch, NULL)) != NULL) { + trim_map_segment_remove(tm, ts, start, end); } + avl_add(&tm->tm_inflight_writes, zio); mutex_exit(&tm->tm_lock); |