Re: poll: allow f_op->poll to sleep, take #3

From: Tejun Heo
Date: Sat Nov 22 2008 - 22:05:49 EST


Davide Libenzi wrote:
> On Sun, 23 Nov 2008, Tejun Heo wrote:
>
>> +static int pollwake(wait_queue_t *wait, unsigned mode, int sync, void *key)
>> +{
>> + struct poll_wqueues *pwq = wait->private;
>> + DECLARE_WAITQUEUE(dummy_wait, pwq->polling_task);
>> +
>> + set_mb(pwq->triggered, 1);
>> +
>> + /* perform the default wake up operation */
>> + return default_wake_function(&dummy_wait, mode, sync, key);
>> +}
>
> Wouldn't it be nicer to un-static try_to_wake_up() (or a wrapper) instead
> of setting up a fake wait queue just to use default_wake_function(), just
> to wake up a task?

I thought try_to_wake_up() was made static to avoid abuse but then again
creating dummy waitqueue is an obvious abuse of waitqueue. What do
other people think? I'll be happy to use try_to_wake_up() directly.

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/