]> granicus.if.org Git - zfs/commit
Fix MMP write frequency for large pools
authorBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 12 Mar 2018 18:26:05 +0000 (11:26 -0700)
committerTony Hutter <hutter2@llnl.gov>
Wed, 14 Mar 2018 23:10:38 +0000 (16:10 -0700)
commitc30e716c8149b7df7cf968373c22aa00b48d17b8
treee607665f7a4fdb36c93cd63dee13f4debfa67764
parent267fd7b0f14251026c35d7ceab4fbbe2f06717e6
Fix MMP write frequency for large pools

When a single pool contains more vdevs than the CONFIG_HZ for
for the kernel the mmp thread will not delay properly.  Switch
to using cv_timedwait_sig_hires() to handle higher resolution
delays.

This issue was reported on Arch Linux where HZ defaults to only
100 and this could be fairly easily reproduced with a reasonably
large pool.  Most distribution kernels set CONFIG_HZ=250 or
CONFIG_HZ=1000 and thus are unlikely to be impacted.

Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #7205
Closes #7289
lib/libspl/include/sys/time.h
module/zfs/mmp.c