GNU bug report logs - #21965
24.5; Emacs freezes when canceling at open file

Previous Next

Package: emacs;

Reported by: Maneesh Yadav <maneeshkyadav <at> gmail.com>

Date: Fri, 20 Nov 2015 21:21:02 UTC

Severity: normal

Found in version 24.5

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Maneesh Yadav <maneeshkyadav <at> gmail.com>
To: John Wiegley <jwiegley <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 21965 <at> debbugs.gnu.org
Subject: bug#21965: 24.5; Emacs freezes when canceling at open file
Date: Mon, 23 Nov 2015 16:30:59 -0800
I don't understand the apple framework/glib event handling structure
and I doubt this is terribly informative, but for the sake of
completeness the output of 'thread list' is pasted below:

(lldb) thread list

Process 23166 stopped

* thread #1: tid = 0x4d18b, 0x00007fff8a861166
libsystem_kernel.dylib`__psynch_mutexwait + 10, queue =
'com.apple.main-thread', stop reason = signal SIGSTOP

  thread #2: tid = 0x4d18c, 0x00007fff8a8613fa
libsystem_kernel.dylib`__select + 10, name = 'gmain'

(lldb)


On Mon, Nov 23, 2015 at 2:17 PM, John Wiegley <jwiegley <at> gmail.com> wrote:
>>>>>> Maneesh Yadav <maneeshkyadav <at> gmail.com> writes:
>
>> Flog me if I am not doing this right. Seems that +debug on macports is the
>> easy to make debug compiles (an old thread seemed to suggest that macports
>> rejected this idea...but I guess it was eventually accepted). So installed
>> emacs +debug and reproduced the crash, attached to emacs via lldb and got
>> this backtrace (which looks a lot like the previous, can I provide better
>> info somehow?):
>
> We're still missing file and line numbers for the Emacs code, which is odd.
> But not terribly important, since the lockup is happening inside glib, it
> appears.
>
>>     frame #3: 0x00000001009db284
>>     libglib-2.0.0.dylib`g_main_context_acquire + 42
>
> So, here's that function, more or less:
>
>     gboolean
>     g_main_context_acquire (GMainContext *context)
>     {
>       gboolean result = FALSE;
>       GThread *self = G_THREAD_SELF;
>
>       if (context == NULL)
>         context = g_main_context_default ();
>
>       LOCK_CONTEXT (context);
>       /* ... */
>     }
>
> We're blocked waiting on the context. The question then being: who else has
> that context? Is it another Emacs thread?
>
> Eli, does this ring any bells?
>
> John




This bug report was last modified 4 years and 267 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.