Date: Sun, 2 Dec 2007 00:59:15 -0800 From: "Carl Shapiro" <carl.shapiro@gmail.com> To: "Kostik Belousov" <kostikbel@gmail.com> Cc: freebsd-current@freebsd.org, davidxu@freebsd.org Subject: Re: Serious compatibility breakage in -current. Message-ID: <4dcb5abd0712020059m70a02a0dyf63ebdaafc2a0ead@mail.gmail.com> In-Reply-To: <20071202054815.GQ83121@deviant.kiev.zoral.com.ua> References: <4dcb5abd0711290226u69105089ya10526519e5cc12d@mail.gmail.com> <20071129112824.GD83121@deviant.kiev.zoral.com.ua> <4dcb5abd0711292235k2bc2af86t45f7268d429c03ad@mail.gmail.com> <20071130152631.GJ83121@deviant.kiev.zoral.com.ua> <4dcb5abd0712012042m6e6cd00br3c9e72c97f047ee5@mail.gmail.com> <20071202054815.GQ83121@deviant.kiev.zoral.com.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Dec 1, 2007 9:48 PM, Kostik Belousov <kostikbel@gmail.com> wrote: > 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). Okay, this clearly explains why we are seeing different things. The si_code check was added in version 1.16. This postdates the release of CMUCL your first patch was tested against. Incidentally, I added that check to the SIGBUS handler and should have known that it does not appear in a formal release. Sorry about that. > 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 ? I have a small test program that maps a page with PROT_NONE and generates a protection violation by writing a byte to it. The "mmap6" executable was compiled on a FreeBSD 6.1 system. The "mmap7" executable was compiled on my 7.0-BETA3 system with your patch applied. Below is a transcript of these two programs being run on the patched 7.0-BETA3 system. freebsd7% file mmap6 mmap6: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), dynamically linked (uses shared libs), not stripped freebsd7% ./mmap6 __FreeBSD_version=601000 signum=10,info->si_code=12,context=0xbfbfe9d0 freebsd7% file ./mmap7 ./mmap7: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 7.0 (700055), dynamically linked (uses shared libs), FreeBSD-style, not stripped freebsd7% ./mmap7 __FreeBSD_version=700055 signum=11,info->si_code=2,context=0xbfbfe9e0 The source code to this program is in a bug report I submitted a few days ago and errantly filed under "misc". Please visit http://www.freebsd.org/cgi/query-pr.cgi?pr=118304 and page down to the "How-To-Repeat" heading. I have also recompiled CMUCL on a FreeBSD 7 system starting with a FreeBSD 6 binary and everything seems to work. I believe the output of my small test program provides sufficient proof that the interfaces we rely on are working as expected.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4dcb5abd0712020059m70a02a0dyf63ebdaafc2a0ead>