summaryrefslogtreecommitdiffstats
path: root/sys/cddl
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2014-01-03 18:44:37 +0000
committermav <mav@FreeBSD.org>2014-01-03 18:44:37 +0000
commit8e1d7be31e296f665fdd2f296e636b0f48df92b9 (patch)
treee17bb8e7394eb0e55e1cd8c4a84170c0d66a6176 /sys/cddl
parentf99282cd01c94afd16d707b0d6d7bf873ef37f7d (diff)
downloadFreeBSD-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.c4
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;
}
OpenPOWER on IntegriCloud