Opened 6 years ago

Closed 6 years ago

#1208 closed defect (fixed)

Linux version 3.15 segfault

Reported by: barryfm Owned by:
Priority: normal Milestone:
Component: Runtime (threads, GC) Version: 1.9
Keywords: sigsegv linux-3.15 Cc:

Description

After upgrading my Arch Linux kernel to 3.15, Clozure consistantly aborts with a "Clozure CL kernel debugger: " prompt.

In gdb:

$ gdb ./lx86cl64
...
(gdb) run --image-name lx86cl64.image --no-init
Starting program: /home/local64-arch/apps/ccl-1.9/lx86cl64 --image-name lx86cl64.image --no-init
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
x86_early_exception_init () at ../x86-exceptions.c:106
106	  do_intn();
(gdb) 

From the comments in x86-exceptions.c, evidently the workaround for handling exceptions has been broken.

Change History (2)

comment:1 Changed 6 years ago by barryfm

Fedora 20 just updated to a 3.15 kernel, and things fine there.

On Fedora 20 (ccl works):

$ uname -a
Linux ecube.site 3.15.3-200.fc20.x86_64 #1 SMP Tue Jul 1 16:18:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

On Arch (ccl aborts):

$ uname -a
Linux ecube 3.15.4-1-ARCH #1 SMP PREEMPT Mon Jul 7 07:42:54 CEST 2014 x86_64 GNU/Linux

However by just booting using Arch's LTS kernel, no other changes, things work:

$ uname -a
Linux ecube 3.14.11-1-lts #1 SMP Mon Jul 7 16:42:50 CEST 2014 x86_64 GNU/Linux

The kernel that fails seems to be the only PREEMPT version I've shown and occured after a 3.15.3 -> 3.15.4 upgrade. I'm sure the previous 1.14.6-1 PREEMPT kernel I had been using worked fine. I have been running the successive 3.15.x kernels since 2014-06-28, but I'm not sure I had run ccl since that date, and I don't have a simple snapshot I can try.

comment:2 Changed 6 years ago by gb

  • Resolution set to fixed
  • Status changed from new to closed

(In [16129]) When walking shared libraries on Linux, don't try to determine the soname of the kernel vdso. (We used to ignore it because it had a null pathname in its link map entry; in recent 3.15.x kernels, it has a bogus (non-absolute) pathname.) Fixes ticket:1208; commit new Linux images.

Note: See TracTickets for help on using tickets.