Re: [PATCH 2/2] poll: allow f_op->poll to sleep

From: Christoph Hellwig
Date: Tue Aug 26 2008 - 15:51:39 EST


On Tue, Aug 26, 2008 at 09:58:14AM -0700, Linus Torvalds wrote:
> I don't really see the point.
>
> poll() isn't allowed to sleep for many reasons. Some are technical. But
> the most obvious one is that a sleeping "poll()" is totally against the
> whole point of polling in the first place!
>
> So is there some big conceptual reason to change how poll() has always
> worked?

Just as a little sidenote most files on spufs have a ->poll that sleeps,
and currently we don't have any debugging to catch this, I just noticed
this by accident. The reason that it sleeps is because it needs to grab
a sleping lock, and as that lock protects against a rather complicate
type of hardware context switch it's not possible to replace it with
a spinlock.

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