Re: csup ends up in sigwai after "Shutting down connection to server", never exits

From: Anton Shterenlikht <mexas_at_bristol.ac.uk>
Date: Tue, 19 Jun 2012 13:19:38 +0100
On Tue, Jun 19, 2012 at 01:49:36PM +0200, Jeremie Le Hen wrote:
> Anton,
> 
> On Mon, Jun 18, 2012 at 09:55:44AM +0100, Anton Shterenlikht wrote:
> > On Thu, Jun 14, 2012 at 12:15:05PM +0100, Anton Shterenlikht wrote:
> > > On Thu, Jun 14, 2012 at 11:57:38AM +0100, Anton Shterenlikht wrote:
> > > > On ia64 r235474 and r235163 I get: 
> > > > 
> > > > # csup -L2 /root/ports-supfile 
> > > > Parsing supfile "/root/ports-supfile"
> > > > Connecting to cvsup.uk.FreeBSD.org
> > > > Connected to 131.111.8.41
> > > > Server software version: SNAP_16_1h
> > > > MD5 authentication started
> > > > MD5 authentication successful
> > > > Negotiating file attribute support
> > > > Exchanging collection information
> > > > Establishing multiplexed-mode data connection
> > > > Running
> > > > Updating collection ports-all/cvs
> > > > Shutting down connection to server
> > > > 
> > > > csup never exits.
> > > > 
> > > > >From top:
> > > > 
> > > >   PID USERNAME    THR PRI NICE   SIZE    RES STATE   C   TIME   WCPU COMMAND
> > > > 33822 root          2  20    0 37496K 23352K sigwai  1   0:32  0.00% csup
> > > >   
> > > > 
> > > > On amd64 r236740M I don't see this problem.
> > > 
> > > Just to update - I don't see this problem on ia64 r231193M.
> > > It seems the only relevant change in usr.bin/csup since then was:
> > > 
> > > Index: usr.bin/csup/auth.c
> > > ===================================================================
> > > --- usr.bin/csup/auth.c (revision 231193)
> > > +++ usr.bin/csup/auth.c (working copy)
> > > _at__at_ -293,7 +293,7 _at__at_
> > >         gettimeofday(&tv, NULL);
> > >         pid = getpid();
> > >         ppid = getppid();
> > > -       srand(tv.tv_usec ^ tv.tv_sec ^ pid);
> > > +       srandom(tv.tv_usec ^ tv.tv_sec ^ pid);
> > >         addrlen = sizeof(laddr);
> > >         error = getsockname(config->socket, (struct sockaddr *)&laddr, &addrlen);
> > >         if (error < 0) {
> > 
> > I was thinking of doing a binary search for this,
> > but realised that I'd have to build/install world,
> > not just kernel, right? This will take a *long* time.
> 
> I think recompiling the kernel and the libraries csup depends on will be
> enough.

you mean

# make cleandir && make obj && make && make install

for all these libs:

# ldd /root/csup/csup
/root/csup/csup:
        libz.so.6 => /lib/libz.so.6 (0x1200ca000)
        libthr.so.3 => /lib/libthr.so.3 (0x120102000)
        libmd.so.5 => /lib/libmd.so.5 (0x12014c000)
        libc.so.7 => /lib/libc.so.7 (0x120178000)

right?

-- 
Anton Shterenlikht
Room 2.6, Queen's Building
Mech Eng Dept
Bristol University
University Walk, Bristol BS8 1TR, UK
Tel: +44 (0)117 331 5944
Fax: +44 (0)117 929 4423
Received on Tue Jun 19 2012 - 10:19:40 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:28 UTC