Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 133635 - bash 3.1 doesn't close named pipes properly causing hang in dvd-slideshow
Summary: bash 3.1 doesn't close named pipes properly causing hang in dvd-slideshow
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-05-17 13:09 UTC by Peter Fox
Modified: 2007-02-09 06:26 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Named pipe test case showing pipe close doesn't reach the other process (it keeps going) (pipetest.sh,187 bytes, text/plain)
2006-05-17 13:15 UTC, Peter Fox
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Fox 2006-05-17 13:09:05 UTC
dvd-slideshow hangs at the message:
[dvd-slideshow] waiting for mpeg2enc to finish...

It has closed a named pipe to another process, then waits for it
to exit, but it never does.

I have written a short test case which also shows the same effect
with bash 3.1.16, but runs fine on my ancient system (not gentoo)
with bash 2.05a. I shall attach it in a mo.

Portage 2.0.54-r2 (default-linux/x86/2005.0, gcc-3.4.5, glibc-2.4-r3, 2.6.16-gentoo-r6 i686)
=================================================================
System uname: 2.6.16-gentoo-r6 i686 AMD Sempron(tm) Processor 2800+
Gentoo Base System version 1.6.14
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python:     2.3.5-r2, 2.4.2
dev-python/pycrypto: [Not Present]
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.4.3-r4, 1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -mmmx -msse -mfpmath=sse -m3dnow -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon-xp -mmmx -msse -mfpmath=sse -m3dnow -O3 -pipe -fomit-frame-pointer"
DISTDIR="/home/gentoo/gentoo/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://peter/pub http://distfiles.gentoo.org"
LANG="en_GB"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/home/gentoo/portage"
SYNC="rsync://peter/gentoo-portage"
USE="x86 3dnow X aalib acpi alsa apache2 audiofile avi berkdb bitmap-fonts bzip2 cairo cdr cli crypt cups curl doc dri dts dvdr eds emboss encode esd exif expat fam ffmpeg firefox flac foomaticdb fortran gd gdbm gif gimp gimpprint glut gmp gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile hal idn imagemagick imlib isdnlog jack java jpeg junit lcms ldap libcaca libg++ libwww lynxkeymap mad mhash mikmod mmx mng mono motif mozilla mp3 mpeg ncurses nls nptl nptlonly ogg oggvorbis openal opengl pam pcre pdflib perl php png pppd python qemu-fast qt quicktime readline reflection samba scanner sdl session slang softmmu speex spell spl sqlite sse ssl svg svga tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts udev usb vorbis win32codecs wmf xine xml xml2 xmms xorg xv xvid zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTAGE_RSYNC_OPTS
Comment 1 Peter Fox 2006-05-17 13:15:41 UTC
Created attachment 86952 [details]
Named pipe test case showing pipe close doesn't reach the other process (it keeps going)

This works on old system (bash 2.05a, libc-2.2.5, kernel 2.6.16-gentoo-r3), but not the new one (bash 3.1.16, libc-2.4, kernel 2.6.16-gentoo-r6).
Comment 2 Peter Fox 2006-05-21 07:37:12 UTC
I've just tried bash-3.0-r12 on the new system, and that seems ok. So something in the change to 3.1.16 seems to have broken named pipes.
Comment 3 Peter Fox 2006-05-22 10:33:08 UTC
Reported bug using bashbug.
Comment 4 Thomas Kohler 2006-09-25 11:41:29 UTC
Temporarly workaround:

echo "=app-shells/bash-3.1_p16" >> /etc/portage/package.mask

emerge bash
Comment 5 SpanKY gentoo-dev 2007-02-09 06:26:16 UTC
re-open if it doesnt work with bash-3.2