[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
port-i386/39521: SIGIO, xemacs random crashes on SMP system
>Synopsis: SIGIO, xemacs random crashes on SMP system
>Arrival-Date: Thu Sep 11 17:55:00 +0000 2008
>Release: NetBSD 4.99.72
System: NetBSD ficus 4.99.72 NetBSD 4.99.72 (FICUS) #8: Sat Aug 30 13:19:16
CEST 2008 troot@ficus:/usr/obj/sys/arch/i386/compile/FICUS i386
I am observing random crashes of xemacs on an SMP/i386 system (intel quad
core CPU) since quite a long time now (I would say since January this year).
Since then I have upgraded several time the base sytem, and ran on a regular
basis pkg_rolling-replace -sur. xemacs has been recompiled with up-to-date
system each time.
The crashes can be quite easily reproduced by running `xemacs-21.4.17 -vanilla`
(from pkgsrc), visiting a big buffer (an autoconf 'configure' script of 20k
lines is the perfect example), turning on font lock, fontifying the buffer
and searching for some text. It's not 100% guaranteed but on my system I have a
combination of configure file / search text that can crash xemacs 100% of
the time. The core dump shows evidence of memory corruption, or a failed
a/ The problem disappears as soon as I turn all but one CPUs offline, or if I
run the same binary/userland/kernel on another UP machine. So this looks
b/ The problem disppears if I remove completely the SIGIO handler that xemacs
installs (commenting the line 801 in src/signal.c of pkgsrc/xemacs). So this
c/ The problem remains if I install *an empty* SIGIO handler (an empty
function binded to SIGIO). That an empty SIGIO handler can crash the
application make me think the source of the problem might be in the kernel.
d/ The problem is the same with xemacs 21.4.17, 21.4.21, 21.5.27. I was not
able to reproduce the problem in a small code snippet yet (I'm still trying
take an SMP system.
run xemacs. (any version greater than or equal to 21.4.17 will do).
load a big buffer (20k lines or so).
turn on font-lock-mode.
C-s (search) for some text, repeatedly.
You should be looking at a core dump within a few seconds.
A workaround is to remove the SIGIO handler in src/signal.c:801 of
xemacs-21.4.17 from pkgsrc.
Main Index |
Thread Index |