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

#45 new defect

Can't exit debugger on OSX

Reported by: Raymond Toy Owned by: somebody
Priority: minor Milestone:
Component: Core Version: 20b
Keywords: Cc:

Description

When a real sigbus happens on Mac OS X, cmucl can't exit to top-level or exit the debugger. Here is an example of how to trigger this:

* (sys:sap-ref-8 (sys:int-sap 0) 256)
sigbus_handler: Real protection violation: 0x100


Error in function UNIX::SIGBUS-HANDLER:  Bus Error at #x105DC74F.
   [Condition of type SIMPLE-ERROR]

Restarts:
  0: [ABORT] Return to Top-Level.

Debug  (type H for help)

(UNIX::SIGBUS-HANDLER #<unused-arg> #<unused-arg> #.(SYSTEM:INT-SAP #x47FFFFE0))
Source: 
; File: target:code/signal.lisp
(DEFINE-SIGNAL-HANDLER SIGBUS-HANDLER "Bus Error")
0] 0



Error in function UNIX::SIGSEGV-HANDLER:  Segmentation Violation at #x4803B8E9.
   [Condition of type SIMPLE-ERROR]

Restarts:
  0: [ABORT] Return to Top-Level.

Debug  (type H for help)

(UNIX::SIGBUS-HANDLER #<unused-arg> #<unused-arg> #.(SYSTEM:INT-SAP #x47FFFFE0))
Source: (DEFINE-SIGNAL-HANDLER SIGBUS-HANDLER "Bus Error")
0]  0
sigbus_handler: Real protection violation: 0x0
Maximum number (4096) of interrupts exceeded.  Exiting.

On linux or solaris, we immediately return to top-level as expected.

Note that in other situations, the debugger works fine.

Change History (0)

Note: See TracTickets for help on using tickets.