From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mike Mattie Newsgroups: gmane.emacs.devel Subject: Re: emacs crashs when remote x-windows closes after make-frame-on-display even when other frame was closed due to assertion in xcd_xlib.c (!c->xlib.lock) Date: Fri, 4 Jan 2008 18:27:44 -0800 Message-ID: <20080104182744.2a2f449c@reforged> References: <471847F6.1000406@swipnet.se> <14487449.post@talk.nabble.com> <477DEAC9.5020005@swipnet.se> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0317861789==" X-Trace: ger.gmane.org 1199500220 29868 80.91.229.12 (5 Jan 2008 02:30:20 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 5 Jan 2008 02:30:20 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Jan 05 03:30:41 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JAyo3-0006el-Ft for ged-emacs-devel@m.gmane.org; Sat, 05 Jan 2008 03:30:39 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JAynb-00034X-W5 for ged-emacs-devel@m.gmane.org; Fri, 04 Jan 2008 21:30:12 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JAynW-000342-8A for emacs-devel@gnu.org; Fri, 04 Jan 2008 21:30:06 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JAynU-00033h-NJ for emacs-devel@gnu.org; Fri, 04 Jan 2008 21:30:05 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JAynU-00033d-E6 for emacs-devel@gnu.org; Fri, 04 Jan 2008 21:30:04 -0500 Original-Received: from wa-out-1112.google.com ([209.85.146.179]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JAynU-0005Bk-0O for emacs-devel@gnu.org; Fri, 04 Jan 2008 21:30:04 -0500 Original-Received: by wa-out-1112.google.com with SMTP id k34so10707637wah.10 for ; Fri, 04 Jan 2008 18:30:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:subject:message-id:in-reply-to:references:x-mailer:mime-version:content-type; bh=FvPms/1LW8aCPYATGyJ2yjwFRN9K3FledNuo41IQv1M=; b=bvbawCIqOw+0DF/JZXdpezoibvHwdZ305qId0KZuLIuGq8PPqzhUxKh214HEyylRK8XYJoPBd0Qzc7w5CRYDcUCh8v5YYx49w8B1sM28EEQLwytaTdw1PysTDoQWOsLoEJ1rjM+uSEetKBAEzQXAOsZpUTO8nQxEymXMzJsUSiY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:subject:message-id:in-reply-to:references:x-mailer:mime-version:content-type; b=D/1966Qt3vfNgPtg7whi7J6BB2gew1+c+p1tLOvcb0eifVbLqV+MNbM2wT2dO2Soau7i1UvQSz/OCxrrOYXBEAbMDQLXlGo0Hu+mpN1ziLjZmSRZhEwR8M9ir5Zsc1X4rzbE1ILXJBVJyoS2JRKriMTt8uERoy+euZ26xjwLFQQ= Original-Received: by 10.114.106.1 with SMTP id e1mr17921148wac.95.1199500202481; Fri, 04 Jan 2008 18:30:02 -0800 (PST) Original-Received: from reforged ( [71.217.198.62]) by mx.google.com with ESMTPS id n30sm30153508wag.43.2008.01.04.18.30.01 (version=SSLv3 cipher=OTHER); Fri, 04 Jan 2008 18:30:01 -0800 (PST) In-Reply-To: <477DEAC9.5020005@swipnet.se> X-Mailer: Claws Mail 3.0.2 (GTK+ 2.12.1; i686-pc-linux-gnu) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:86100 Archived-At: --===============0317861789== Content-Type: multipart/signed; boundary="Sig_/R96PsaEWDBXwfMtKEh2Aq2O"; protocol="application/pgp-signature"; micalg=PGP-SHA1 --Sig_/R96PsaEWDBXwfMtKEh2Aq2O Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Fri, 04 Jan 2008 09:14:01 +0100 Jan Dj=E4rv wrote: > Thanks for the backtrace. >=20 > This is a bug in xcb. Granted the XSync call is not needed and can > be avoided. But that doesn't help. Emacs uses Xt/Gtk+ and Emacs > must call functions in those toolkits to close the display and clean > up data. Otherwise there will be a memory leak. Those functions > will call Xlib functions also. Xcb must allow this. Most > applications just exit when they get an I/O error, but Emacs can have > several display conections and shall not exit just because one of > them is closed. >=20 > The Xlib calls below is all done from the same thread so what is the > lock protecting anyway? >=20 > I suggest filing a bug report to Xcb. This is a change in behaviour > from classic Xlib. >=20 > Jan D. Many distros have already patched xcb to disable this. I think it has gone upstream as well. It should disappear soon.=20 >=20 > Matan Ninio skrev: > > emacs: xcb_xlib.c:41: xcb_xlib_lock: Assertion `!c->xlib.lock' > > failed. > >=20 > > Program received signal SIGABRT, Aborted. > > 0xb7a547d6 in raise () from /lib/libc.so.6 > > (gdb) backtrace > > #0 0xb7a547d6 in raise () from /lib/libc.so.6 > > #1 0xb7a560f1 in abort () from /lib/libc.so.6 > > #2 0xb7a4db50 in __assert_fail () from /lib/libc.so.6 > > #3 0xb7a256f4 in xcb_xlib_lock () from /usr/lib/libxcb-xlib.so.0 > > #4 0xb7cbc6cc in _XCBInitDisplayLock () from /usr/lib/libX11.so.6 > > #5 0xb7cb12f5 in XSync () from /usr/lib/libX11.so.6 > > #6 0x080c58e9 in x_catch_errors (dpy=3D0x8a25f40) at xterm.c:7572 > > #7 0x080c7187 in x_connection_closed (dpy=3D0x8a25f40, > > error_message=3D0xbfac7550 "Connection lost to X server `:1.0'") at > > xterm.c:7726 > > #8 0x080c747b in x_io_error_quitter (display=3D0x8a25f40) at > > xterm.c:7888 #9 0xb7cb59dd in _XIOError () > > from /usr/lib/libX11.so.6 #10 0xb7cbd1ba in _XReadPad () > > from /usr/lib/libX11.so.6 #11 0xb7cbd918 in _XEventsQueued () > > from /usr/lib/libX11.so.6 #12 0xb7ca69a3 in XPending () > > from /usr/lib/libX11.so.6 #13 0x080cb141 in XTread_socket (sd=3D0, > > expected=3D1, hold_quit=3D0xbfac8a70) at xterm.c:7070 > > #14 0x080f3b50 in read_avail_input (expected=3D1) at keyboard.c:6843 > > #15 0x080f3d9a in handle_async_input () at keyboard.c:6989 > > #16 0x080f3f51 in input_available_signal (signo=3D29) at > > keyboard.c:7031 #17 > > #18 0xb7af5ff8 in ___newselect_nocancel () from /lib/libc.so.6 > > #19 0x08181f55 in select_wrapper (n=3D1, rfd=3D0x0, wfd=3D0xbfac8ff8, > > xfd=3D0x0, tmo=3D0xbfac9128) at process.c:4225 > > #20 0x08184e23 in wait_reading_process_output (time_limit=3D30, > > microsecs=3D0, read_kbd=3D-1, do_display=3D1, wait_for_cell=3D137472201, > > wait_proc=3D0x0, just_wait_proc=3D0) at process.c:4594 > > #21 0x08053fe6 in sit_for (timeout=3D240, reading=3D1, do_display=3D1) = at > > dispnew.c:6579 > > #22 0x080f8fdb in read_char (commandflag=3D1, nmaps=3D2, > > maps=3D0xbfac93f0, prev_event=3D137472201, used_mouse_menu=3D0xbfac9488, > > end_time=3D0x0) at keyboard.c:2904 > > #23 0x080fabe5 in read_key_sequence (keybuf=3D0xbfac9534, bufsize=3D30, > > prompt=3D137472201, dont_downcase_last=3D0, can_return_switch_frame=3D1, > > fix_current_buffer=3D1) at keyboard.c:9135 > > #24 0x080fc6f3 in command_loop_1 () at keyboard.c:1618 > > #25 0x08152e20 in internal_condition_case (bfun=3D0x80fc560 > > , handlers=3D137517657, hfun=3D0x80f7020 ) > > at eval.c:1481 #26 0x080f6473 in command_loop_2 () at > > keyboard.c:1329 #27 0x08152efa in internal_catch (tag=3D137510841, > > func=3D0x80f6450 , arg=3D137472201) at eval.c:1222 > > #28 0x080f6e5c in command_loop () at keyboard.c:1308 > > #29 0x080f71fa in recursive_edit_1 () at keyboard.c:1006 > > #30 0x080f72e6 in Frecursive_edit () at keyboard.c:1067 > > #31 0x080ed160 in main (argc=3D3, argv=3D0xbfac9bb4) at emacs.c:1762 > > (gdb)=20 > >=20 > > Jan Dj=E4rv wrote: > >> > >> Can you put a break at the assertion position and get a backtrace > >> when the assertion is hit? > >> > >> Jan D. > >> > >> Richard Stallman skrev: > >>> Would someone please fix this, then ack? > >>> > >>> To: bug-gnu-emacs@gnu.org > >>> From: Matan Ninio > >>> Date: Mon, 15 Oct 2007 09:10:05 +0200 > >>> MIME-Version: 1.0 > >>> Content-Type: text/plain; charset=3Dus-ascii > >>> Subject: emacs crashs when remote x-windows closes after > >>> make-frame-on-display even when other frame was closed > >>> due to assertion in xcd_xlib.c (!c->xlib.lock)=20 > >>> > >>> > >>> Please write in English if possible, because the Emacs maintainers > >>> usually do not have translators to read other languages for them. > >>> > >>> Your bug report will be posted to the bug-gnu-emacs@gnu.org > >>> mailing list, and to the gnu.emacs.bug news group. > >>> > >>> Please describe exactly what actions triggered the bug > >>> and the precise symptoms of the bug: > >>> > >>> open emacs in X, make frame on display to some other display > >>> (either directly or via ssh -X -Y) with "make-frame-on-display". > >>> Close the other frame. all still OK. close the other display > >>> (logout, kill X or kill ssh link), and emacs will crash with: > >>> emacs: xcb_xlib.c:41: xcb_xlib_lock: Assertion `!c->xlib.lock' > >>> failed. > >>> > >>> Similar problems happened with other applications when the system > >>> moved from xlib to xcb-xlib. This is probably due to strict > >>> checking of actions that had been left unchecked in past versions > >>> of the library, and therefor should be considered an Emacs bug > >>> rather then a library bug. > >>> =20 > >>> > >>> If Emacs crashed, and you have the Emacs process in the gdb > >>> debugger, please include the output from the following gdb > >>> commands: `bt full' and `xbacktrace'. > >>> If you would like to further debug the crash, please read the file > >>> /usr/share/emacs/22.1/etc/DEBUG for instructions. > >>> > >>> > >>> In GNU Emacs 22.1.1 (i486-pc-linux-gnu, GTK+ Version 2.10.13) > >>> of 2007-08-22 on raven, modified by Debian > >>> Windowing system distributor `The X.Org Foundation', version > >>> 11.0.10300000 > >>> configured using `configure '--build=3Di486-linux-gnu' > >>> '--host=3Di486-linux-gnu' '--prefix=3D/usr' > >>> '--sharedstatedir=3D/var/lib' '--libexecdir=3D/usr/lib' > >>> '--localstatedir=3D/var/lib' '--infodir=3D/usr/share/info' > >>> '--mandir=3D/usr/share/man' '--with-pop=3Dyes' > >>> '--enable-locallisppath=3D/etc/emacs22:/etc/emacs:/usr/local/share/em= acs/22.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/22.1/s= ite-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/22.1/leim' > >>> '--with-x=3Dyes' '--with-x-toolkit=3Dgtk' > >>> '--with-toolkit-scroll-bars' 'build_alias=3Di486-linux-gnu' > >>> 'host_alias=3Di486-linux-gnu' 'CFLAGS=3D-DDEBIAN -g -O2'' > >>> > >>> Important settings: > >>> value of $LC_ALL: nil > >>> value of $LC_COLLATE: nil > >>> value of $LC_CTYPE: nil > >>> value of $LC_MESSAGES: nil > >>> value of $LC_MONETARY: nil > >>> value of $LC_NUMERIC: nil > >>> value of $LC_TIME: nil > >>> value of $LANG: en_US.UTF-8 > >>> locale-coding-system: utf-8 > >>> default-enable-multibyte-characters: t > >>> > >>> Major mode: Shell > >>> > >>> Minor modes in effect: > >>> shell-dirtrack-mode: t > >>> display-time-mode: t > >>> icomplete-mode: t > >>> show-paren-mode: t > >>> tooltip-mode: t > >>> mouse-wheel-mode: t > >>> menu-bar-mode: t > >>> file-name-shadow-mode: t > >>> global-font-lock-mode: t > >>> font-lock-mode: t > >>> unify-8859-on-encoding-mode: t > >>> utf-translate-cjk-mode: t > >>> auto-compression-mode: t > >>> column-number-mode: t > >>> line-number-mode: t > >>> > >>> Recent input: > >>> M-x r e p o r t SPC b e m >>> n> > >>> > >>> Recent messages: > >>> Loading monk-fn-handler...done > >>> Loading desktop...done > >>> Loading edmacro...done > >>> `pmwiki-multi-source': mmm-mode is not installed > >>> Loading semantic-el...done > >>> Customized for CSE-HUJI > >>> Loading shell...done > >>> Customized for CSE-HUJI > >>> Loading ansi-color...done > >>> Loading emacsbug...done > >>> > >> > >> _______________________________________________ > >> Emacs-devel mailing list > >> Emacs-devel@gnu.org > >> http://lists.gnu.org/mailman/listinfo/emacs-devel > >> > >> > >=20 >=20 >=20 > _______________________________________________ > Emacs-devel mailing list > Emacs-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-devel --Sig_/R96PsaEWDBXwfMtKEh2Aq2O Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) iD8DBQFHfusgdfRchrkBInkRAhw3AKDhAXyz4AlwKtnIkeu2KmYW4Y3ftACfSh/V j1M59PqCBOURoWn54DntlSs= =0R93 -----END PGP SIGNATURE----- --Sig_/R96PsaEWDBXwfMtKEh2Aq2O-- --===============0317861789== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel --===============0317861789==--