Re: [PATCH v2 1/2] epoll: introduce POLLFREE to flush->signalfd_wqh before kfree()

From: Oleg Nesterov
Date: Thu Mar 01 2012 - 14:33:45 EST


On 02/29, Andrew Lutomirski wrote:
>
> On Wed, Feb 29, 2012 at 12:06 PM, Oleg Nesterov <oleg@xxxxxxxxxx> wrote:
> > On 02/29, Andy Lutomirski wrote:
> >>
> >> On 02/24/2012 11:07 AM, Oleg Nesterov wrote:
> >> > This patch adds the special event, POLLFREE, currently only for
> >> > epoll. It expects that init_poll_funcptr()'ed hook should do the
> >> > necessary cleanup. Perhaps it should be defined as EPOLLFREE in
> >> > eventpoll.
> >>
> >> I have a bunch of userspace code that uses signalfd via epoll.  Does
> >> this affect the ABI?
> >
> > I hope not ;)
> >
>
> Excellent!
>
> To avoid further confusion, would it make sense to update the comment
> in poll.h to indicate that POLLFREE is only for epoll and is internal
> to the kernel?

Agreed. Or perhaps we can simply use POLLREMOVE instead...

But note that nobody (including me) likes this fix, just I was asked
to make something simple/backportable. Probably it will be reverted
later.

If not, then perhaps it makes sense to do a couple of simple changes
on top to cleanup the usage of POLLFREE and to ensure that POLLHUP
is actually delivered (the latter will be user-visible).

Oleg.

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