Package: tmux
Version: 1.4-2
Severity: normal
When the session is ended by closing the last shell within tmux, tmux hangs.
It also hangs when a new session is started (this time with an existing
socket):
teyth...@ganymede:~$ id
uid=1000(teythoon) gid=1000(teythoon) groups=1000(teythoon),4(adm)
teyth...@ganymede:~$ ls /var/run/tmux/tmux-1000
teyth...@ganymede:~$ tmux
[... session starts, enter exit ...]
[... tmux hangs, so you need to kill it ...]
[server exited]
teyth...@ganymede:~$ stat /var/run/tmux/tmux-1000/default
File: `/var/run/tmux/tmux-1000/default'
Size: 0 Blocks: 0 IO Block: 8192 socket
Device: 3h/3d Inode: 542761 Links: 1
Access: (0660/srw-rw----) Uid: ( 1000/teythoon) Gid: ( 1000/teythoon)
Access: 2011-01-09 14:54:31.000000000 +0000
Modify: 2011-01-09 14:54:31.000000000 +0000
Change: 2011-01-09 14:55:16.000000000 +0000
teyth...@ganymede:~$ tmux
[... tmux hangs immediately ...]
Removing that socket leads to the first behaviour.
(OTOH joining a running session with 'tmux attach' works as expected.)
I optained one stack trace using gdb, but I am not sure whether this is tmux
hanging at the first or second point described above. Unfortunately all the
traces I'm getting now are looking weird and wrong... well, here it is:
(gdb) bt
#0 0x010a5f4c in mach_msg_trap ()
at
/build/buildd-eglibc_2.11.2-7-hurd-i386-6JVoJz/eglibc-2.11.2/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2
#1 0x010a6749 in __mach_msg (msg=0x15ff278, option=2, send_size=0,
rcv_size=40, rcv_name=129, timeout=0, notify=0) at msg.c:110
#2 0x010ad221 in _hurd_select (nfds=2, pollfds=0x80b5d60, readfds=0x0,
writefds=0x0, exceptfds=0x0, timeout=0x0, sigmask=0x0) at hurdselect.c:324
#3 0x0118fcdb in __poll (fds=0x80b5d60, nfds=2, timeout=-1)
at ../sysdeps/mach/hurd/poll.c:48
#4 0x01080ee5 in ?? () from /usr/lib/libevent-1.4.so.2
#5 0x010744da in event_base_loop () from /usr/lib/libevent-1.4.so.2
#6 0x010748b9 in event_loop () from /usr/lib/libevent-1.4.so.2
#7 0x010748de in event_dispatch () from /usr/lib/libevent-1.4.so.2
#8 0x0804c781 in client_main (argc=0, argv=0x15ffd9c, flags=1) at client.c:197
#9 0x0807cf75 in main (argc=0, argv=0x15ffd9c) at tmux.c:518
One more weird thing I just found out by accident: When I start an tmux session
and then attach to it using gdb and kill it using gdbs kill command, tmux
would exit leaving an socket behind:
teyth...@ganymede:~$ stat /var/run/tmux/tmux-1000/default
File: `/var/run/tmux/tmux-1000/default'
Size: 0 Blocks: 0 IO Block: 8192 socket
Device: 3h/3d Inode: 542768 Links: 1
Access: (0660/srw-rw----) Uid: ( 1000/teythoon) Gid: ( 1000/teythoon)
Access: 2011-01-09 15:10:05.000000000 +0000
Modify: 2011-01-09 15:10:05.000000000 +0000
Change: 2011-01-09 15:10:45.000000000 +0000
But now tmux works as expected, I can create and exit as many sessions as I
want. I tried to reproduce this with kill but both SIGINT and SIGKILL lead
to tmux hanging when restarting it. Not sure why it is different when using
gdb.
This might not even be a tmux bug but one in libevent or the hurd itself, but
it surfaces when using tmux and is quite annoying.
-- System Information:
Debian Release: 6.0
APT prefers unstable
APT policy: (900, 'unstable'), (300, 'experimental')
Architecture: hurd-i386 (i686-AT386)
Kernel: GNU-Mach 1.3.99/Hurd-0.3
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL
set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages tmux depends on:
ii libc0.3 2.11.2-7 Embedded GNU C Library: Shared lib
ii libevent2 2.0.3-alpha-1 An asynchronous event notification
ii libncurses5 5.7+20100313-5 shared libraries for terminal hand
tmux recommends no packages.
tmux suggests no packages.
-- no debconf information
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]