[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 23.0.50; Emacs seg fault
From: |
Kim F. Storm |
Subject: |
Re: 23.0.50; Emacs seg fault |
Date: |
Mon, 08 Oct 2007 15:01:46 +0200 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux) |
Leo <address@hidden> writes:
> On 2007-10-07 22:35 +0100, Kim F. Storm wrote:
>> Leo <address@hidden> writes:
>>
>>> On 2007-10-06 23:41 +0100, Kim F. Storm wrote:
>>>> Just a wild guess - could you try to change "AIX" to "1" in the above
>>>> code and see if that makes any difference...
>>>
>>> I wasn't able to compile. See:
>>>
>>> ......
>>> make[1]: Entering directory `/home/emacs/src'
>>> gcc -c -D_BSD_SOURCE -Demacs -DHAVE_CONFIG_H -DUSE_GTK
>>> -I. -I/home/emacs/src -D_BSD_SOURCE -I/usr/include/gtk-2.0
>>> -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo
>>> -I/usr/include/pango-1.0 -I/usr/include/glib-2.0
>>> -I/usr/lib/glib-2.0/include -I/usr/include/freetype2
>>> -I/usr/include/alsa -I/usr/include/librsvg-2 -I/usr/include/glib-2.0
>>> -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -g -O0 process.c
>>> process.c:4641:8: error: macro names must be identifiers
>>> make[1]: *** [process.o] Error 1
>>> make[1]: Leaving directory `/home/emacs/src'
>>> make: *** [src] Error 2
>>
>> Sorry, I meant replace
>>
>> #ifdef AIX
>>
>> by
>>
>> #if 1
>
> Now emacs doesn't CRASH.
Thanks for testing. Does anybody know anything about this?
The relevant code is this:
else if (xerrno == EBADF)
{
#ifdef AIX
/* AIX doesn't handle PTY closure the same way BSD does. On AIX,
the child's closure of the pts gives the parent a SIGHUP, and
the ptc file descriptor is automatically closed,
yielding EBADF here or at select() call above.
So, SIGHUP is ignored (see def of PTY_TTY_NAME_SPRINTF
in m/ibmrt-aix.h), and here we just ignore the select error.
Cleanup occurs c/o status_notify after SIGCLD. */
no_avail = 1; /* Cannot depend on values returned */
#else
abort ();
#endif
}
For some reason this happens to Leo on
In GNU Emacs 23.0.50.4 (i686-pc-linux-gnu, GTK+ Version 2.10.14)
of 2007-09-29 on Fedora
configured using `configure '--prefix=/usr/local/packages/emacs'
'--enable-locallisppath=/usr/local/share/emacs/site-lisp'
'--without-toolkit-scroll-bars''
Maybe Linux behaviour here is more like AIX than BSD here,
Or it is timing related - although I cannot see where it happens.
My previous patch moving suspicious code before setting up the fd-sets
didn't help [Leo, are you absolutely sure you applied the first patch
correctly]?
In any case, if we believe this is a temporary situation (since we
abort otherwise), always setting no_avail = 1 in this case could be
a solution (if nobody can find out what's wrong -- I CAN'T).
To reproduce:
1. emacs -nw -q in screen
2. M-x server-start
3. switch to Linux console (Ctrl + Alt + F1)
4. emacsclient -t
--
Kim F. Storm <address@hidden> http://www.cua.dk
- Re: 23.0.50; Emacs seg fault, Richard Stallman, 2007/10/01
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/05
- Re: 23.0.50; Emacs seg fault, Kim F. Storm, 2007/10/06
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/07
- Re: 23.0.50; Emacs seg fault, Kim F. Storm, 2007/10/07
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/07
- Re: 23.0.50; Emacs seg fault,
Kim F. Storm <=
- Re: 23.0.50; Emacs seg fault, Dan Nicolaescu, 2007/10/08
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/08
- Re: 23.0.50; Emacs seg fault, Dan Nicolaescu, 2007/10/08
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/10
- Re: 23.0.50; Emacs seg fault, Dan Nicolaescu, 2007/10/10
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/10
- Re: 23.0.50; Emacs seg fault, Dan Nicolaescu, 2007/10/10
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/11
- Re: 23.0.50; Emacs seg fault, Dan Nicolaescu, 2007/10/11
- Re: 23.0.50; Emacs seg fault, Leo, 2007/10/10