close Warning: Can't synchronize with repository "(default)" ("(default)" is not readable or not a Git repository.). Look in the Trac log for more information.

Opened 13 years ago

Closed 13 years ago

#55 closed defect (fixed)

blocked signals

Reported by: Helmut Eller Owned by: somebody
Priority: major Milestone:
Component: Core Version: 20c
Keywords: signals interrupts Cc:

Description

I think there is a problem related to blocked signals and garbage collection:

  1. Start cmucl -noinit -eval '(loop (ext:gc :full t))' in a terminal and let it run.
  1. Under Linux, cat /proc/<pid>/status shows that SigBlk is 0 i.e. no signals are blocked.
  1. Interrupt the loop with C-c (SIGINT) and wait for the debugger.
  1. SigBlk is still 0.
  1. Type c to continue the loop.
  1. SigBlk is now 000000001fc90000

That's a bug, right? It should again be zero.

The problem doesn't occur if the loop is empty, so I figure this has something to do with GC.

Change History (1)

comment:1 Changed 13 years ago by toy.raymond@…

Resolution: fixed
Status: newclosed

commit d6cb31e417a1f73fcd326de8534f6a3da0f2cc89 Author: Raymond Toy <toy.raymond@…> Date: Fri Feb 3 19:47:29 2012 -0800

Fix ticket:55. Copy all of the sigmask instead of just a few. This only affected linux which uses an array for the sigmask.

Note: See TracTickets for help on using tickets.