]> git.proxmox.com Git - mirror_spl-debian.git/commit
Fix delay()
authorBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 1 May 2013 23:20:28 +0000 (16:20 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 1 May 2013 23:35:47 +0000 (16:35 -0700)
commitab59be7bc752481db64df07c821e2ae6bf2ae71b
treee3c19b54c0761591c981bc0b9675b2f1c89e918d
parentf6437b60c2b2bf514a0c2e82f51fde5803b57b93
Fix delay()

Somewhat amazingly it went unnoticed that the delay() function
doesn't actually cause the task to block.  Since the task state
is never changed from TASK_RUNNING before schedule_timeout() the
scheduler allows to task to continue running without any delay.
Using schedule_timeout_interruptible() resolves the issue by
correctly setting TASK_UNINTERRUPTIBLE.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
include/sys/timer.h