[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gcl-devel] Segfault while building maxima
From: |
Jerry James |
Subject: |
Re: [Gcl-devel] Segfault while building maxima |
Date: |
Wed, 5 Jun 2013 09:05:04 -0600 |
On Tue, Jun 4, 2013 at 4:34 PM, Jerry James <address@hidden> wrote:
> I built the latest 2.6.8pre from CVS a few days ago for Fedora
> Rawhide. Now it is segfaulting while building maxima:
I looked through the diff from the 26 Jan 2013 snapshot to current CVS
head to see if I could spot something that might be related. I
applied this patch to revert one change:
--- o/sgbc.c.orig 2013-05-10 20:25:57.000000000 -0600
+++ o/sgbc.c 2013-06-04 16:44:51.156907429 -0600
@@ -1158,14 +1158,14 @@
return -1;
}
{ /* mips kernel bug test -- SIGBUS with no faddr when floating
point is emulated. */
- float *f1=(void *)memprotect_test_address,*f2=(void
*)b2,*f1e=f1+p/sizeof(*f1);
+ float *f1=(void *)memprotect_test_address,*f2=(void *)b2;
if (mprotect(memprotect_test_address,p,PROT_READ_EXEC)) {
memprotect_result=memprotect_cannot_protect;
return -1;
}
memprotect_result=memprotect_bad_return;
- for (;f1<f1e;) *f1++=*f2;
+ *f1=*f2;
if (memprotect_result==memprotect_bad_return)
memprotect_result=memprotect_no_signal;
if (memprotect_result!=memprotect_none) {
and now maxima builds successfully and passes all tests. On the other
hand, I see this in the logs:
Loading /builddir/build/BUILD/maxima-5.30.0/src/init-cl.lisp
Finished loading /builddir/build/BUILD/maxima-5.30.0/src/init-cl.lisp
; - Providing system maxima
The SGC segfault recovery test failed with memprotect_no_signal, SGC disabled
So the patch above is not correct, but I don't understand this code
well enough to know what to do to fix the infinite recursion described
in my first message. Regards,
--
Jerry James
http://www.jamezone.org/