Hi Derek,
On Thu, Jul 22, 2010 at 2:25 PM, Derek O'Connell doconnel@gmail.com wrote:
On 22/07/10 22:20, Eliot Miranda wrote:
Hi Paul,
On Thu, Jul 22, 2010 at 2:14 PM, Paul DeBruickerpdebruic@gmail.com wrote:
Hi Eliot,
On 07/22/2010 05:02 PM, vm-dev-request@lists.squeakfoundation.org wrote:
handle SIGUSR2 nostop noprint noignore
If I include the above line in my .gdbinit then gdb complains:
Cannot find user-level thread for LWP XXXXX
where XXXXX is the process number for the VM. Sometimes the VM window stays open and freezes at that point and sometimes it closes. Gdb then states that the "Target is running" when I type in the commands you listed. If I comment the "handle SIGUSR2 ..." line out then I get this from those commands:
just looks like the OS/run-time is not letting the program set a handler for SIGUSR2 and/or not allowing it to be caught. This is a deal breaker. Why it's happening I don't know, but currently Cog's heartbeat on linux depends on being able to catch SIGUSR2.
From: http://pauillac.inria.fr/~xleroy/linuxthreads/faq.html
H.4: With LinuxThreads, I can no longer use the signals SIGUSR1 and SIGUSR2 in my programs! Why?
The short answer is: because the Linux kernel you're using does not support realtime signals.
I'd forgotten all that! I thought that stuff was ancient history. So we need two things, one is a pair of alternative signals, the other is a reliable #define that we can use to distinguish l'ancien regime from the modern day.
thanks Derek!
best Eliot