[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <492925B0.9030404@gmail.com>
Date: Sun, 23 Nov 2008 18:43:12 +0900
From: Tejun Heo <htejun@...il.com>
To: Ingo Molnar <mingo@...e.hu>
CC: Davide Libenzi <davidel@...ilserver.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Matthew Wilcox <matthew@....cx>,
Miklos Szeredi <miklos@...redi.hu>, arjan@...ux.intel.com,
Linus Torvalds <torvalds@...ux-foundation.org>,
hch@...radead.org, rminnich@...dia.gov, ericvh@...il.com,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-fsdevel@...r.kernel.org
Subject: Re: poll: allow f_op->poll to sleep, take #3
Ingo Molnar wrote:
> _sync() is not something that should normally be done from poll
> handlers. But ->poll() handlers should all be TASK_INTERRUPTIBLE,
> right? So wake_up_process_interruptible() should be the thing you
> need?
>
> Anyway, if you really want to pass in a state filter, you can use the
> already existing wake_up_state() method as well.
It's not really about what I want but more about how the interface
looks in the first place. Something like the following is simply
ugly.
int my_callback(param a, param b, param c)
{
WARN_ON(b != B);
do_something(a);
}
And @sync might be useful depending on who's waking it up, so we
either need to change the wake interface or give it an easier way to
pass those parameters as received. The callback function isn't the
right place to ignore those parameters. It simply doesn't know why
the caller is passing them in or what they mean under the
circumstances.
Thanks.
--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists