Messages in this thread | | | From | Roland McGrath <> | Subject | Re: [PATCH 1/3] signals: sigqueue_free: don't free sigqueue if it is queued | Date | Wed, 21 May 2008 11:42:45 -0700 (PDT) |
| |
> Oh well. I just realized SIGQUEUE_CANCELLED breaks sys_sigpending() ?
Yes, it does. Well, POSIX says after timer_delete "the disposition of pending signals for the deleted timer is unspecified". So perhaps one can say that "unspecified" here can include sigpending() says it's pending but it will disappear when delivered or accepted (means sigwait()). But it's a bit of a stretch.
Just properly removing the sigqueue entry and fixing the pending set is looking pretty good. Why was it we didn't do that?
Thanks, Roland
| |