mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-10-26 18:05:04 +03:00
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 |
||
|---|---|---|
| .. | ||
| ia32 | ||
| rpc | ||
| sys | ||
| util | ||
| assert.h | ||
| atomic.h | ||
| attr.h | ||
| devid.h | ||
| libdevinfo.h | ||
| libgen.h | ||
| libshare.h | ||
| limits.h | ||
| locale.h | ||
| Makefile.am | ||
| note.h | ||
| statcommon.h | ||
| stdio.h | ||
| stdlib.h | ||
| string.h | ||
| strings.h | ||
| stropts.h | ||
| synch.h | ||
| thread.h | ||
| tzfile.h | ||
| ucred.h | ||
| umem.h | ||
| unistd.h | ||
| zone.h | ||