darwin: using pointers as port names is not guaranteed to work
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Fix Released
|
Medium
|
Unassigned |
Bug Description
The OSX/Darwin implementation allocates a named mach port (mach_port_
Mapping the exception port/mach thread to the internal thread struct could be done with a simple hash table on the exception port name. Alternatively, there is a mechanism to attach a context (opaque pointer) to a receive right, such as an exception port:
mach_
mach_
Stashing the struct thread pointer in the exception port context when registering for the exceptions would allow simple lookup when the exception is raised.
Changed in sbcl: | |
status: | Fix Committed → Fix Released |
Aaron, can you put together a patch with the mach_port_ {s,g}et_ context approach?