diff options
author | mav <mav@FreeBSD.org> | 2014-01-03 18:44:37 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2014-01-03 18:44:37 +0000 |
commit | 8e1d7be31e296f665fdd2f296e636b0f48df92b9 (patch) | |
tree | e17bb8e7394eb0e55e1cd8c4a84170c0d66a6176 /sys/cddl | |
parent | f99282cd01c94afd16d707b0d6d7bf873ef37f7d (diff) | |
download | FreeBSD-src-8e1d7be31e296f665fdd2f296e636b0f48df92b9.zip FreeBSD-src-8e1d7be31e296f665fdd2f296e636b0f48df92b9.tar.gz |
In dmu_zfetch_stream_reclaim() replace division with multiplication and
move it out of the loop and lock.
Diffstat (limited to 'sys/cddl')
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c index 647ad9e..d51a981 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c @@ -604,14 +604,16 @@ static zstream_t * dmu_zfetch_stream_reclaim(zfetch_t *zf) { zstream_t *zs; + clock_t ticks; + ticks = zfetch_min_sec_reap * hz; if (! rw_tryenter(&zf->zf_rwlock, RW_WRITER)) return (0); for (zs = list_head(&zf->zf_stream); zs; zs = list_next(&zf->zf_stream, zs)) { - if (((ddi_get_lbolt() - zs->zst_last)/hz) > zfetch_min_sec_reap) + if (ddi_get_lbolt() - zs->zst_last > ticks) break; } |