3419 /**
3420 * wait_for_completion_timeout: - waits for completion of a task (w/timeout)
3421 * @x: holds the state of this particular completion
3422 * @timeout: timeout value in jiffies
3423 *
3424 * This waits for either a completion of a specific task to be signaled or for a
3425 * specified timeout to expire. The timeout is in jiffies. It is not
3426 * interruptible.
3427 *
3428 * The return value is 0 if timed out, and positive (at least 1, or number of
3429 * jiffies left till timeout) if completed.
3430 */
3431 unsigned long __sched
3432 wait_for_completion_timeout(struct completion *x, unsigned long timeout)
3433 {
3434 return wait_for_common(x, timeout, TASK_UNINTERRUPTIBLE);
3435 }
3436 EXPORT_SYMBOL(wait_for_completion_timeout);
3437
返回0 就是超时,我试试把time out 设置大一些看看是否会好点。