Hi, We are using an older version of perl and see that our perl program aborts and the dump reveals a failure at:
#define PL_signals (vTHX->Isignals) if (PL_signals & PERL_SIGNALS_UNSAFE_FLAG) - failure here

This issue seems to be occurring due to a race condition between threads when they are exiting Similar issues in old versions have been patched by blocking the signals until the thread context is set as below: reference : https://rt.perl.org/Public/Bug/Display.html?id=60724

/* Block most signals for calling thread, setting the old signal ma +sk to + * oldmask, if it is not NULL */ +STATIC int +S_block_most_signals(sigset_t *oldmask) +{ + sigset_t newmask; + + sigfillset(&newmask); + /* Don't block certain "important" signals (stolen from mg.c) +*/ +#ifdef SIGILL + sigdelset(&newmask, SIGILL); +#endif +#ifdef SIGBUS + sigdelset(&newmask, SIGBUS); +#endif +#ifdef SIGSEGV + sigdelset(&newmask, SIGSEGV); +#endif
Is it possible to block a SIGTERM signal in the same way as it was done for the others to take care of this race condition and help thread context to be set and avoid the vTHX object from becoming null leading to this crash. Please advise of any further implications. Thanks

2018-02-02 Athanasius added code tags and linkified link


In reply to Mask SIGTERM in thread destruction to avoid a SIGTERM by arsvrv

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.