Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: need help golfing down/making a backtrace for panic: free from wrong pool, … during global destruction.

by dave_the_m (Monsignor)
on Jul 03, 2019 at 18:34 UTC ( [id://11102372]=note: print w/replies, xml ) Need Help??


in reply to need help golfing down/making a backtrace for panic: free from wrong pool, … during global destruction.

That error message usually means that memory which was allocated by one thread was freed by another thread. This usually occurs if an XS-based module is not written to be thread-safe, or is buggy. Less commonly in recent perls, it may indicate a bug in perl itself.

The usual way to debug such things is to set a breakpoint at the place in the src where the error is is tested for and raised, to see what address is being freed, and by what. Then re-run with a conditiomnal breakpoint set in the allocation code to see where that address is allocated.

Run gdb with PERL_HASH_SEED=0 to get consistent results between runs.

Dave.

  • Comment on Re: need help golfing down/making a backtrace for panic: free from wrong pool, … during global destruction.

Replies are listed 'Best First'.
Re^2: need help golfing down/making a backtrace for panic: free from wrong pool, … during global destruction.
by daxim (Curate) on Jul 04, 2019 at 06:44 UTC
    The instructions are too vague to be of use for me, that's above my skill level.

      Can you golf your instructions down a bit?

      Is "run KDE Konsole 19.04" necessary or does any Linux console suffice? Can you replicate the problem in a *BSD VM maybe?

      What commands/input does "KDE Konsole 19.04" send when you use the menu option "Clear Scrollback and Reset"? Is sending that input enough to make the problem reproducible in a non-interactive fashion?

      Does the problem go away if you use a Perl built without threading?

      While it's great that you have a reproducible case, it is still tied very much to your setup. If you are using threads anywhere, dave_the_ms guess is likely good, any C library that is not threadsafe will have problems if you use threads.

        does any Linux console suffice
        Tried now with a few different. Can also repro in QTerminal 0.14.1 (Actions → Clear Active Terminal), but not in xfce4-terminal 0.8.7.4 nor vte 2.91 (package vte-tools 0.56.3). Any other have no discernible way to trigger a clear and reset.
        Can you replicate the problem in a *BSD VM maybe?
        I'm not going to pursue that, the bug is nowhere near the kernel.
        What commands/input does "KDE Konsole 19.04" send
        I don't know and have no idea how to find out. That's why I was asking in the first place.
        Does the problem go away if you use a Perl built without threading?
        yes

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11102372]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (2)
As of 2024-04-20 03:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found