Re: Serious compatibility breakage in -current.

From: Kostik Belousov <kostikbel_at_gmail.com>
Date: Sun, 2 Dec 2007 07:48:16 +0200
On Sat, Dec 01, 2007 at 08:42:56PM -0800, Carl Shapiro wrote:
> On Nov 30, 2007 7:26 AM, Kostik Belousov <kostikbel_at_gmail.com> wrote:
> > The patch I posted was enough for CMUCL to survive the gc.
> 
> The SIGBUS handler in CMUCL compares the value of si_code to
> BUS_PAGE_FAULT.  If these values do not compare equal, the signal is
> not interpreted by the garbage collector.  For the record, your
> original patch did not fill the si_code value with BUS_PAGE_FAULT and
> so it was not enough.

Is this some new code ? I did tested it on CLUCL-19d compiled for
RELENG_6. Also, the sigbus_handler() from lisp/FreeBSD-os.c rev 1.12
does not contain the check, it seems (that describes why it worked for
me).

> 
> > Patch below shall implement it, and be MFCed to RELENG_7. The change to
> > crtbrand.c shall be MFCed to RELENG_6 (and, possibly, RELENG_5). Patch
> > was lightly tested on i386, and compile tested on amd64.
> > Please, give it a run.
> 
> I applied your patch to my 7.0-BETA3 sources and my test programs now
> behave as expected.  Notably, the si_code value is always correct.
> Thanks!

I will put the patch into the tree ASAP, subject to coordination with
re_at_ and portmgr_at_.

Could you, please, describe what was tested in more details ? Did
you run the CMUCL (and sbcl) with the patch ? If yes, could you, please,
show the file(1) output on the bin/lisp and bin/sbcl binary ?

Received on Sun Dec 02 2007 - 05:14:38 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:23 UTC