From: Nikodemus S. <nik...@ra...> - 2007-04-06 08:35:46
|
Alastair Bridgewater wrote: >> ...and when we do add it, let's describe the problem it addresses >> properly: what does "trouble tracing through signal handler frames on >> some platforms" mean? Does it mean the backtrace is truncated, or that >> we have the signal handler frames visible, or that we get mysterious >> memory faults, or what? > > As I understand it, "trouble tracing through signal handler frames on > some platforms" means that, on x86-oid systems, the backtrace mechanism > occasionally misinterprets a C stack frame as a Lisp one, and within two > frames after that is generating no-longer-mysterious memory faults > (because we now know what causes them). Ok. Except that I still fail to understand how binding *internal-error-context* can help, as the same context should be the first one in thread->interrupt_contexts[]. Am I missing the obvious here? > The agreed-upon "proper" solution for this is to change the Lisp stack > frame layout to match the C one in terms of placement of return address > and old frame pointer relative to the current frame pointer. I've no quarrel with this. Cheers, -- Nikodemus |