On Thu, 5 Dec 2024 11:51:47 +0100
Corinna Vinschen wrote:
> On Dec  5 12:25, Takashi Yano wrote:
> > Currently, the signal queue is touched by the thread sig as well as
> > other threads that call sigaction_worker(). This potentially has
> > a possibility to destroy the signal queue chain. A possible worst
> > result may be a self-loop chain which causes infinite loop. With
> > this patch, lock()/unlock() are introduce to avoid such a situation.
> > 
> > Fixes: 474048c26edf ("* sigproc.cc (pending_signals::add): Just index 
> > directly into signal array rather than treating the array as a heap.")
> > Suggested-by: Corinna Vinschen <cori...@vinschen.de>
> > Reviewed-by: Corinna Vinschen <cori...@vinschen.de>
> > Signed-off-by: Takashi Yano <takashi.y...@nifty.ne.jp>
> > ---
> >  winsup/cygwin/exceptions.cc            | 12 +++++------
> >  winsup/cygwin/local_includes/sigproc.h |  2 +-
> >  winsup/cygwin/signal.cc                |  4 ++--
> >  winsup/cygwin/sigproc.cc               | 28 +++++++++++++++++++++-----
> >  4 files changed, 32 insertions(+), 14 deletions(-)
> 
> LGTM, please push.

With the patch
[PATCH v3 3/9] Cygwin: signal: Remove queue entry from the queue chain when 
cleared
?

-- 
Takashi Yano <takashi.y...@nifty.ne.jp>

Reply via email to