Re: [PATCH 1/2] wait: kill is_sync_wait()

From: Ingo Molnar
Date: Tue Aug 26 2008 - 10:09:45 EST



* Tejun Heo <tj@xxxxxxxxxx> wrote:

> is_sync_wait() is used to distinguish between sync and async waits.
> Basically sync waits are the ones initialized with
> init_waitqueue_entry() and async ones with init_waitqueue_func_entry().
> The sync/async distinction is used only in prepare_to_wait[_exclusive]()
> and its only function is to skip setting the current task state if the
> wait is async. This has a few problems.
>
> * No one uses it. None of func_entry users use prepare_to_wait()
> functions, so the code path never gets executed.
>
> * The distinction is bogus. Maybe back when func_entry is used only
> by aio but it's now also used by epoll and in future possibly by 9p
> and poll/select.
>
> * Taking @state as argument and ignoring it silenly depending on how
> @wait is initialized is just a bad error-prone API.
>
> * It prevents func_entry waits from using wait->private for no good
> reason.
>
> This patch kills is_sync_wait() and the associated code paths from
> prepare_to_wait[_exclusive](). As there was no user of these code
> paths, this patch doesn't cause any behavior difference.
>
> Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>

good spotting.

Acked-by: Ingo Molnar <mingo@xxxxxxx>

Ingo
--
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/