Date: Thu, 07 Mar 2013 04:54:01 -0100 From: Jan Beich <jbeich@tormail.org> To: Jilles Tjoelker <jilles@stack.nl> Cc: Davide Italiano <davide@FreeBSD.org>, Dimitry Andric <dim@FreeBSD.org>, FreeBSD Current <freebsd-current@freebsd.org>, "Hartmann, O." <ohartman@zedat.fu-berlin.de> Subject: Re: r247839: broken pipe - for top, sudo and ports Message-ID: <1UDUQ3-0009HU-83@internal.tormail.org> In-Reply-To: <20130306212408.GA15814@stack.nl> (Jilles Tjoelker's message of "Wed, 6 Mar 2013 22:24:08 %2B0100") References: <5135B7E1.3050002@zedat.fu-berlin.de> <5135BBD9.9090009@FreeBSD.org> <51364914.2010104@zedat.fu-berlin.de> <51364E8D.5020608@zedat.fu-berlin.de> <20130306212408.GA15814@stack.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
Jilles Tjoelker <jilles@stack.nl> writes: > On Tue, Mar 05, 2013 at 08:59:09PM +0100, Hartmann, O. wrote: > >> A "truss top" reveals this, is this of help? > >> [...] >> stat("/etc/nsswitch.conf",{ mode=-rw-r--r-- >> ,inode=162310,size=1007,blksize=32768 }) = 0 (0x0) >> stat("/etc/nsswitch.conf",{ mode=-rw-r--r-- >> ,inode=162310,size=1007,blksize=32768 }) = 0 (0x0) >> stat("/etc/nsswitch.conf",{ mode=-rw-r--r-- >> ,inode=162310,size=1007,blksize=32768 }) = 0 (0x0) >> stat("/etc/nsswitch.conf",{ mode=-rw-r--r-- >> ,inode=162310,size=1007,blksize=32768 }) = 0 (0x0) >> stat("/etc/nsswitch.conf",{ mode=-rw-r--r-- >> ,inode=162310,size=1007,blksize=32768 }) = 0 (0x0) >> socket(PF_LOCAL,SOCK_STREAM,0) = 4 (0x4) >> connect(4,{ AF_UNIX "/var/run/nscd" },15) = 0 (0x0) >> fcntl(4,F_SETFL,O_NONBLOCK) = 0 (0x0) >> kqueue(0x80183b000,0x80122fc58,0x10,0x80062b308,0x80183b010,0x2) = 5 (0x5) >> kevent(5,{0x4,EVFILT_WRITE,EV_ADD,0,0x0,0x0},1,0x0,0,0x0) = 0 (0x0) >> kqueue(0x5,0x7fffffffd2e0,0x1,0x0,0x0,0x0) = 6 (0x6) >> kevent(6,{0x4,EVFILT_READ,EV_ADD,0,0x0,0x0},1,0x0,0,0x0) = 0 (0x0) >> kevent(5,{0x4,EVFILT_WRITE,EV_ADD,1,0x4,0x0},1,0x0,0,0x0) = 0 (0x0) >> kevent(5,0x0,0,{0x4,EVFILT_WRITE,EV_EOF,0,0x2000,0x0},1,0x0) = 1 (0x1) >> sendmsg(0x4,0x7fffffffd290,0x0,0x1,0x1,0x0) ERR#32 'Broken pipe' >> SIGNAL 13 (SIGPIPE) >> process exit, rval = 0 > > Apparently there is a bug that causes nscd to close the connection > immediately but even then it is wrong that this terminates the calling > program with SIGPIPE. > > The below patch prevents the SIGPIPE but cannot revive the connection to > nscd. This may cause numeric UIDs in top or increase the load on the > directory server. It is compile tested only. [...] The patch seems to fix the issue in a world after r247804. I don't see numeric UIDs in top but without the patch top crashes with SIGPIPE a lot less frequently than sudo or make install (in base/ports) for me. In my case shutting down nscd helped, too. Compared to stock nsswitch.conf I only have "cache" added.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1UDUQ3-0009HU-83>