]> git.proxmox.com Git - mirror_spl-debian.git/blobdiff - module/splat/splat-rwlock.c
Sleep uninteruptibly, waking up early may result in a crash
[mirror_spl-debian.git] / module / splat / splat-rwlock.c
index b1db12ea8d1e4cc281fef312e427d903bf7b134d..70c9dc3d06899eecd5330b643c7ffdd34d84d8a7 100644 (file)
@@ -84,7 +84,7 @@ typedef struct rw_thr {
 static inline void
 splat_rwlock_sleep(signed long delay)
 {
-       set_current_state(TASK_INTERRUPTIBLE);
+       set_current_state(TASK_UNINTERRUPTIBLE);
        schedule_timeout(delay);
 }
 
@@ -431,7 +431,7 @@ splat_rwlock_test2(struct file *file, void *arg)
        while (splat_rwlock_lock_and_test(&rwv.rw_priv_lock,
               atomic_read(&rwv.rw_acquired) != 0 ||
               atomic_read(&rwv.rw_waiters) != 0)) {
-               splat_rwlock_sleep(1 * HZ);
+               splat_rwlock_sleep(HZ);
        }
 
        /* If any of the write threads ever acquired the lock