]> granicus.if.org Git - spl/commitdiff
Reduce kmem cache deadlock threshold
authorBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 16 Dec 2014 00:02:48 +0000 (16:02 -0800)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 16 Jan 2015 21:55:09 +0000 (13:55 -0800)
Reduce the threshold for detecting a kmem cache deadlock by 10x
from HZ to HZ/10.  The reduced value is still several orders of
magnitude large enough to avoid being triggered incorrectly.  By
reducing it we allow the system to resolve the issue more quickly.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
module/spl/spl-kmem-cache.c

index a68852ed7ac7e94268dad2bf7b99dc13072180bc..809ac5cc51174c9c93a7ada10b7f68a64398eafe 100644 (file)
@@ -1215,7 +1215,7 @@ spl_cache_grow(spl_kmem_cache_t *skc, int flags, void **obj)
                rc = spl_emergency_alloc(skc, flags, obj);
        } else {
                remaining = wait_event_timeout(skc->skc_waitq,
-                   spl_cache_grow_wait(skc), HZ);
+                   spl_cache_grow_wait(skc), HZ / 10);
 
                if (!remaining && test_bit(KMC_BIT_VMEM, &skc->skc_flags)) {
                        spin_lock(&skc->skc_lock);