GNU bug report logs -
#39948
28.0.50; crash in fchmodat
Previous Next
Reported by: Stephen Berman <stephen.berman <at> gmx.net>
Date: Fri, 6 Mar 2020 14:17:01 UTC
Severity: normal
Found in version 28.0.50
Done: Stephen Berman <stephen.berman <at> gmx.net>
Bug is archived. No further changes may be made.
Full log
Message #17 received at 39948 <at> debbugs.gnu.org (full text, mbox):
>>>>> On Fri, 06 Mar 2020 17:45:13 +0200, Eli Zaretskii <eliz <at> gnu.org> said:
>> From: Stephen Berman <stephen.berman <at> gmx.net>
>> Date: Fri, 06 Mar 2020 15:16:43 +0100
>>
>> I updated from master today and now Emacs is crashing when I use Gnus.
>> The first time it happened I been reading news groups for a while, then
>> email arrived and when I pulled it into Gnus, Emacs crashed. Then I
>> restarted Emacs under GDB and now get the crash already on starting Gnus
>> (with my initializations; it doesn't happen when I start an unconfigured
>> Gnus in Emacs -Q). I tried to get a full backtrace, but the output of
>> `bt full' seemed to be in an endless loop; here's the start of the
>> backtrace:
>>
>> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
>> 0x000000000060c9b2 in fchmodat (dir=dir <at> entry=-100,
>> file=file <at> entry=0x4be6b40 "/home/steve/Mail/unsorted.nov",
>> mode=mode <at> entry=384, flags=flags <at> entry=0)
>> at /home/steve/src/emacs/emacs-master/lib/fchmodat.c:65
>> 65 {
>> (gdb) bt full
>> #0 0x000000000060c9b2 in fchmodat
>> (dir=dir <at> entry=-100, file=file <at> entry=0x4be6b40 "/home/steve/Mail/unsorted.nov", mode=mode <at> entry=384, flags=flags <at> entry=0)
>> at /home/steve/src/emacs/emacs-master/lib/fchmodat.c:65
>> #1 0x000000000060cae4 in orig_fchmodat
>> (dir=dir <at> entry=-100, file=file <at> entry=0x4be6b40 "/home/steve/Mail/unsorted.nov", mode=mode <at> entry=384, flags=flags <at> entry=0)
>> at /home/steve/src/emacs/emacs-master/lib/fchmodat.c:33
>> #2 0x000000000060c9e0 in fchmodat
>> (dir=dir <at> entry=-100, file=file <at> entry=0x4be6b40 "/home/steve/Mail/unsorted.nov", mode=mode <at> entry=384, flags=flags <at> entry=0)
>> at /home/steve/src/emacs/emacs-master/lib/fchmodat.c:134
>> #3 0x000000000060cae4 in orig_fchmodat
>> (dir=dir <at> entry=-100, file=file <at> entry=0x4be6b40 "/home/steve/Mail/unsorted.nov", mode=mode <at> entry=384, flags=flags <at> entry=0)
>> at /home/steve/src/emacs/emacs-master/lib/fchmodat.c:33
>> #4 0x000000000060c9e0 in fchmodat
>> (dir=dir <at> entry=-100, file=file <at> entry=0x4be6b40 "/home/steve/Mail/unsorted.nov", mode=mode <at> entry=384, flags=flags <at> entry=0)
>> at /home/steve/src/emacs/emacs-master/lib/fchmodat.c:134
>> #5 0x000000000060cae4 in orig_fchmodat
>> (dir=dir <at> entry=-100, file=file <at> entry=0x4be6b40 "/home/steve/Mail/unsorted.nov", mode=mode <at> entry=384, flags=flags <at> entry=0)
>> ter/lib/fchmodat.c:33
>>
>> This pattern repeated for tens of thousands of frames, then I
>> interrupted it and typed `c':
Eli> Sounds like infinite recursion, which causes stack overflow.
lib/fchmodat.c:fchmodat can call lib/fchmodat.c:orig_fchmodat, which
can call fchmodat. Presumably that last one is meant to be the system
fchmodat, but itʼs calling the fchmodat.c:fchmodat one instead. CC'ing
Paul.
Robert
This bug report was last modified 5 years and 72 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.