Make buildworld broken on RELENG_9?

Paul van der Zwan paulz at vanderzwan.org
Sun Apr 21 08:51:21 UTC 2013


On 19 Apr 2013, at 22:21 , Jeremy Chadwick <jdc at koitsu.org> wrote:

> On Fri, Apr 19, 2013 at 09:57:46PM +0200, Paul van der Zwan wrote:
>> 
>> On 19 Apr 2013, at 1:36 , Jeremy Chadwick <jdc at koitsu.org> wrote:
>> 
>>> On Thu, Apr 18, 2013 at 02:16:28PM -0700, Jeremy Chadwick wrote:
>>>> On Thu, Apr 18, 2013 at 10:59:29PM +0200, Paul van der Zwan wrote:
>>>>> Since last weekend or so my make buildworld terminate at the following error:
>>>>> ===> share/tabset (all)
>>>>> uudecode < /usr/src/share/tabset/3101.uu
>>>>> uudecode < /usr/src/share/tabset/9837.uu
>>>>> uudecode < /usr/src/share/tabset/aa.uu
>>>>> uudecode < /usr/src/share/tabset/aed512.uu
>>>>> uudecode < /usr/src/share/tabset/beehive.uu
>>>>> uudecode < /usr/src/share/tabset/diablo.uu
>>>>> uudecode < /usr/src/share/tabset/dtc382.uu
>>>>> uudecode < /usr/src/share/tabset/hp700-wy.uu
>>>>> uudecode < /usr/src/share/tabset/ibm3101.uu
>>>>> uudecode < /usr/src/share/tabset/std.uu
>>>>> uudecode < /usr/src/share/tabset/stdcrt.uu
>>>>> uudecode < /usr/src/share/tabset/tandem653.uu
>>>>> uudecode < /usr/src/share/tabset/teleray.uu
>>>>> uudecode < /usr/src/share/tabset/vt100.uu
>>>>> uudecode < /usr/src/share/tabset/vt100-w.uu
>>>>> uudecode < /usr/src/share/tabset/wyse-adds.uu
>>>>> uudecode < /usr/src/share/tabset/xerox1720.uu
>>>>> uudecode < /usr/src/share/tabset/xerox1730.uu
>>>>> uudecode < /usr/src/share/tabset/xerox1730-lm.uu
>>>>> uudecode < /usr/src/share/tabset/zenith29.uu
>>>>> ===> share/termcap (all)
>>>>> gzip -cn /usr/src/share/termcap/termcap.5 > termcap.5.gz
>>>>> TERM=dumb TERMCAP=dumb: ex - /usr/src/share/termcap/termcap.src < /usr/src/share/termcap/reorder
>>>>> script, 2: Pattern not found
>>>>> *** [termcap] Error code 1
>>>>> 
>>>>> Stop in /usr/src/share/termcap.
>>>>> *** [all] Error code 1
>>>>> 
>>>>> Stop in /usr/src/share.
>>>>> *** [share.all__D] Error code 1
>>>>> 
>>>>> Stop in /usr/src.
>>>>> *** [everything] Error code 1
>>>>> 
>>>>> Stop in /usr/src.
>>>>> *** [buildworld] Error code 1
>>>>> 
>>>>> Stop in /usr/src.
>>>>> 
>>>>> Even after updateing /usr/src using svn I keep this.
>>>>> Before this build I updated it:
>>>>> $ cd /data/src ; svn up ; 
>>>>> U    sys/sys/vnode.h
>>>>> U   sys/sys
>>>>> U    sys/geom/geom_disk.c
>>>>> U    sys/geom/geom_int.h
>>>>> U    sys/geom/geom_subr.c
>>>>> U    sys/geom/geom_dev.c
>>>>> U    sys/geom/geom_event.c
>>>>> U    sys/ufs/ufs/ufs_lookup.c
>>>>> U    sys/ufs/ffs/ffs_softdep.c
>>>>> U    sys/cam/cam_xpt.c
>>>>> U    sys/cam/cam_periph.c
>>>>> U    sys/cam/cam_sim.c
>>>>> U    sys/cam/cam_periph.h
>>>>> U    sys/cam/cam_sim.h
>>>>> U    sys/cam/scsi/scsi_xpt.c
>>>>> U    sys/cam/scsi/scsi_da.c
>>>>> U    sys/cam/scsi/scsi_pass.c
>>>>> U    sys/cam/scsi/scsi_cd.c
>>>>> U    sys/cam/ata/ata_da.c
>>>>> U    sys/cam/ata/ata_all.c
>>>>> U    sys/cam/ata/ata_xpt.c
>>>>> U    sys/dev/usb/controller/xhci_pci.c
>>>>> U   sys/dev
>>>>> U    sys/kern/vfs_cache.c
>>>>> U   sys
>>>>> Updated to revision 249624.
>>>>> 
>>>>> /etc/make.conf is almost empty :
>>>>> $ cat /etc/make.conf
>>>>> KERNCONF=vbox
>>>>> CFLAGS= -O2 -fno-strict-aliasing -pipe
>>>>> COPTFLAGS= -O -pipe
>>>>> 
>>>>> # added by use.perl 2013-03-12 18:50:12
>>>>> PERL_VERSION=5.14.2
>>>>> 
>>>>> Any ideas ?
>>>> 
>>>> I've been able to build stable/9 world without issue even as recent as
>>>> last night.  I'll rm -fr /usr/obj/* and rebuild world under "script"
>>>> then go look at the output to see if I see anything anomalous around
>>>> the area you've shown.  I'll reply when that's done.
>>>> 
>>>> {snip}
>>> 
>>> Can't reproduce the issue.
>>> 
>>> root at testbox:/usr/src # svn info
>>> Path: .
>>> Working Copy Root Path: /usr/src
>>> URL: svn://svn.freebsd.org/base/stable/9
>>> Repository Root: svn://svn.freebsd.org/base
>>> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
>>> Revision: 249628
>>> Node Kind: directory
>>> Schedule: normal
>>> Last Changed Author: mav
>>> Last Changed Rev: 249624
>>> Last Changed Date: 2013-04-18 06:19:41 -0700 (Thu, 18 Apr 2013)
>>> 
>>> Here's what I get, around where yours fails:
>>> 
>>> ===> share/termcap (all)
>>> gzip -cn /usr/src/share/termcap/termcap.5 > termcap.5.gz
>>> TERM=dumb TERMCAP=dumb: ex - /usr/src/share/termcap/termcap.src < /usr/src/share/termcap/reorder
>>> cap_mkdb -l termcap
>>> ===> share/timedef (all)
>>> grep -v '^#' < /usr/src/share/timedef/am_ET.UTF-8.src > am_ET.UTF-8.out
>>> 
>>> Note that yours says "script, 2: Pattern not found" with no mention of
>>> cap_mkdb.
>>> 
>>> My guess is that you have one of the following:
>>> 
>>> a) A corrupted src/share/termcap/Makefile,
>>> b) A corrupted SVN repo,
>> 
>> Deleted the content of src/share/termcap and reran svn.
>> Now the build succeeds.
> 
> Not surprised.  :-)
> 
>>> c) Silent filesystem corruption,
>>> d) Physical disk issues (e.g. bit rot).
>>> 
>> /usr/src is NFS mounted from an OpenIndiana server so the underlying FS is ZFS, so no bitrot or silent corruption
>> should be possible.
> 
> As long as the pool configuration is using something that ZFS can induce
> recovery from (specifically: mirrors, raidzX, or a combination of vdevs
> that make such possible), then that's true.  If a stripe of disks, or a
> single disk, then only detection of such problems is possible.
> 
> zpool status will shed light on the situation.
> 
Pool is made up of two drives in a mirror and scrubbed regularly so I can almost certainly rule that out.

>> I made a snapshot before I deleted the files and ran svn:
>> $ ls -l /data//src/.zfs/snapshot/20130419/share/termcap/
>> total 669
>> -rw-r--r--   1 paulz    home         731 Nov 18 22:26 Makefile
>> -rw-r--r--   1 paulz    home        2501 Nov 18 22:26 README
>> -rw-r--r--   1 paulz    home        1467 Nov 18 22:26 reorder
>> -rw-r--r--   1 paulz    home        3531 Nov 18 22:26 tck
>> -rw-r--r--   1 paulz    home       66181 Nov 18 22:26 termcap.5
>> -rw-r--r--   1 paulz    home      214309 Apr 16 18:55 termcap.src
>> $ ls -l
>> total 669
>> -rw-r--r--   1 paulz    home         731 Apr 19 17:01 Makefile
>> -rw-r--r--   1 paulz    home        2501 Apr 19 17:01 README
>> -rw-r--r--   1 paulz    home        1467 Apr 19 17:01 reorder
>> -rw-r--r--   1 paulz    home        3531 Apr 19 17:01 tck
>> -rw-r--r--   1 paulz    home       66181 Apr 19 17:01 termcap.5
>> -rw-r--r--   1 paulz    home      208289 Apr 19 17:01 termcap.src
>> 
>> So it looks like termcap.src was very different but somehow svn never updated that file.
>> I have only used svn to pull in the FreeBSD source so at the moment no idea if that is normal,
>> but it surprised my that this happened..
> 
> I also find this interesting -- note that multiple files I have are
> different sizes than yours (the only ones which are the same size are
> README and tck).
> 
> root at icarus:/usr/src # ls -l /usr/src/share/termcap/
> total 288
> -rw-r--r--    1 root      wheel        797 Jan 24 16:58 Makefile
> -rw-r--r--    1 root      wheel       2501 Jan 24 16:58 README
> -rw-r--r--    1 root      wheel       1533 Jan 24 16:58 reorder
> -rw-r--r--    1 root      wheel       3531 Jan 24 16:58 tck
> -rw-r--r--    1 root      wheel      66248 Jan 24 16:58 termcap.5
> -rw-r--r--    1 root      wheel     208361 Jan 24 16:58 termcap.src
> root at icarus:/usr/src # svn info
> Path: .
> Working Copy Root Path: /usr/src
> URL: svn://svn.freebsd.org/base/stable/9
> Repository Root: svn://svn.freebsd.org/base
> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
> Revision: 249650
> Node Kind: directory
> Schedule: normal
> Last Changed Author: mm
> Last Changed Rev: 249643
> Last Changed Date: 2013-04-19 02:19:10 -0700 (Fri, 19 Apr 2013)
> 

In the share/termcap directory of snapshot svn info showed:
$ svn info termcap.src 
Path: termcap.src
Name: termcap.src
URL: svn://svn.freebsd.org/base/stable/9/share/termcap/termcap.src
Repository Root: svn://svn.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 249624
Node Kind: file
Schedule: normal
Last Changed Author: eadler
Last Changed Rev: 243259
Last Changed Date: 2012-11-19 05:10:23 +0100 (Mon, 19 Nov 2012)
Text Last Updated: 2012-11-19 20:55:35 +0100 (Mon, 19 Nov 2012)
Checksum: 5e795d6e162acc92997796f13228ffe9

But if I run svn diff I get quite a lot of output.


> And now to try something:
> 
> root at icarus:/usr/src # cp -pR share/termcap /tmp
> root at icarus:/usr/src # rm -fr share/termcap
> root at icarus:/usr/src # svn update
> Updating '.':
> Restored 'share/termcap'
> Restored 'share/termcap/Makefile'
> Restored 'share/termcap/README'
> Restored 'share/termcap/termcap.5'
> Restored 'share/termcap/tck'
> Restored 'share/termcap/termcap.src'
> Restored 'share/termcap/reorder'
> A    lib/libpmc/pmc.haswelluc.3
> A    lib/libpmc/pmc.haswell.3
> U    lib/libpmc/Makefile
> U    lib/libpmc/libpmc.c
> U   lib/libpmc
> U    sys/dev/hwpmc/pmc_events.h
> U    sys/dev/hwpmc/hwpmc_intel.c
> U    sys/dev/hwpmc/hwpmc_core.c
> U    sys/dev/hwpmc/hwpmc_uncore.c
> U   sys/dev
> U    sys/sys/pmc.h
> U   sys/sys
> U   sys
> Updated to revision 249658.
> root at icarus:/usr/src # ls -l /usr/src/share/termcap/
> total 288
> -rw-r--r--  1 root  wheel     797 Apr 19 13:14 Makefile
> -rw-r--r--  1 root  wheel    2501 Apr 19 13:14 README
> -rw-r--r--  1 root  wheel    1533 Apr 19 13:14 reorder
> -rw-r--r--  1 root  wheel    3531 Apr 19 13:14 tck
> -rw-r--r--  1 root  wheel   66248 Apr 19 13:14 termcap.5
> -rw-r--r--  1 root  wheel  208361 Apr 19 13:14 termcap.src
> root at icarus:/usr/src # diff -ruN share/termcap /tmp/termcap
> root at icarus:/usr/src #
> 
> Are you following a different branch than I am?  I'm using stable/9,
> as shown.  The SVN mirror I use is also shown.
> 
> If you're following stable/9, then something is very much out of whack
> on your system, or the SVN repo you're using is giving you very strange
> results.
> 
As far as I can tell from the repo uuid we are using the same repo.


> My recommendations:
> 
> 1. Try a different SVN repo mirror,
> 
> 2. Remove NFS from the picture entirely; use a local disk instead,
> at least for testing/figuring this out,
> 
svn is running locally on the OpenIndiana so only the FreeBSD VMs use
NFS.

> 3. Start over fresh.  DO NOT just delete individual files or dirs --
> there is a "database" SVN uses (just like csup/cvsup!) to try and keep
> track of what's what.  To start over fresh:
> 
> rm -fr /usr/src /usr/src/.svn
> svn checkout svn://wherever/base/stable/9 /usr/src
> 
> Good luck, and I look forward to the results of your investigation.
> 
Done that and that seems to give a buildable source.
Not sure if it's worth it or possible to find out what happened.


Thanks for your help,

	Paul


> -- 
> | Jeremy Chadwick                                   jdc at koitsu.org |
> | UNIX Systems Administrator                http://jdc.koitsu.org/ |
> | Mountain View, CA, US                                            |
> | Making life hard for others since 1977.             PGP 4BD6C0CB |
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
> 



More information about the freebsd-stable mailing list