Messages in this thread | | | Date | Tue, 26 Aug 2008 16:09:00 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH 1/2] wait: kill is_sync_wait() |
| |
* Tejun Heo <tj@kernel.org> 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@kernel.org>
good spotting.
Acked-by: Ingo Molnar <mingo@elte.hu>
Ingo
| |