Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Feb 2001 00:19:46 -0800 (PST)
From:      Matt Dillon <dillon@earth.backplane.com>
To:        Blaz Zupan <blaz@amis.net>
Cc:        <Andrew.Hodgkins@hurlburt.af.mil>, <kstewart@urx.com>, <freebsd-stable@FreeBSD.ORG>
Subject:   Re: RE: Proposed makewhatis perl script fix
Message-ID:  <200102110819.f1B8Jk430590@earth.backplane.com>
References:   <Pine.BSF.4.32.0102110834080.13021-100000@titanic.medinet.si>

next in thread | previous in thread | raw e-mail | index | archive | help
:> :of what is broken.
:> :
:> :Kent
:>
:>     makewhatis is just makewhatis... it has nothing to do with tar.
:>
:>     When you tar something up, tar writes full blocks.  But when you untar
:>     something the actual end of the archive may occur in the middle of a
:>     block.  tar will close the input descriptor 'early' in this case,
:>     potentially before gunzip or uncompress manage to write the last block
:>     of zeros.
:
:I also don't believe that this is the real fix - there is something fishy
:going on in stable. I just upgraded all of our servers from 4.2-RELEASE to
:4.2-STABLE and I see the following messages upon installing *any* package:
:
:/home/blaz# pkg_add gmake-3.79.1.tgz
:
:gzip: stdout: Broken pipe
:tar: child returned status 1
:/home/blaz#
:
:The package actually appears to install and work fine. I also noticed similar
:messages from gzip during "make" on a port, but again the port built and
:installed fine after that.
:
:So no, your makewhatis patch only appears to be a bandaid, but there is
:something going on deeper (possibly in the kernel) that was not there in
:4.2-RELEASE.
:
:Blaz Zupan,  Medinet d.o.o, Linhartova 21, 2000 Maribor, Slovenia
:E-mail: blaz@amis.net, Tel: +386-2-320-6320, Fax: +386-2-320-6325

    There's nothing wrong with the kernel.  It's exactly what I said it
    was.

    pkg_add runs tar with the --fast-read option to extract the table of
    contents.  When I remove the option pkg_add no longer reports broken
    pipes.  When gunzip'ing piped to tar, and tar exits early due to
    the option, gunzip properly gets a 'gzip: stdout: Broken pipe' error.

    Maybe 'tar' was changed recently, maybe 'gunzip' was changed recently,
    I don't know.  But it isn't a kernel problem.  The kernel is doing 
    exactly what it is supposed to be doing.

						-Matt



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102110819.f1B8Jk430590>