[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

RE: Bug with fcntl(n, F_SETOWN, getpid) with NPTL 0.34

Jamie Lokier wrote:
> Changing fasync to deliver signals to a process instead of a thread
> breaks programs which use sigwaitinfo() as their per-thread event
> queue mechanism (e.g. to track dnotify events, or to guarantee event
> ordering from async futexes).

The POSIX specificiation for fcntl with the F_SETOWN argument states
that it takes a process id to identify which process to send the
signal to.

As with any process directed signal it can be delivered to any thread
that does not have it masked. So as long as signals are masked
appropriately, a thread doing sigwait/sigwaitinfo would be the one to
receive the signal.

I don't know how this relates to fasync so I'll leave you guys to
"fight" this out. Meanwhile at Roland's suggestion I've submitted a
kernel bug report on bugzilla - 107344

Thanks for the responses.

David Holmes

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]