bad awk output on vkernel

YONETANI Tomokazu qhwt+dfly at les.ath.cx
Thu Aug 13 06:02:04 PDT 2009


Hello.
Am I only one, or is anyone else seeing this problem too?
I don't remember when, but running `make buildworld' in vkernel stopped
working a few months ago.  It always fails while it's building gcc4.4
in _gcc44_tools.  I managed to narrow down to an awk script in gcc producing
inconsistent output, here's the script which can reproduce the behavior:

  #!/bin/sh
  prefix=/usr/src/gnu/usr.bin/cc41/cc_prep
  cc41contrib=$prefix/../../../../contrib/gcc-4.1

  list=`seq 0 20`
  first=
  while :; do
	  last=$(env - PATH=$PATH \
	  /usr/bin/awk -f $cc41contrib/gcc/opt-gather.awk \
	  $cc41contrib/gcc/c.opt \
	  $cc41contrib/gcc/common.opt \
	  $cc41contrib/gcc/config/i386/i386.opt)
	  md5=$(echo "$last" | /sbin/md5)
	  echo $md5
	  if [ -z "$first" ]; then
		  first="$last"
		  first_md5=$md5
	  elif [ "$md5" != "$first_md5" ]; then
		  echo "$first" > first
		  echo "$last" > last
		  break
	  fi
  done

Things I've already tried include:
- running the same script on native DragonFly box (always constistent md5)
- running on an SMP and non-SMP VKERNEL (both reproduced the problem)
- md5 on the source tree is always consistent
- running this script for source tree in the local filesystem on vkernel,
  and on an NFS-exported on from vkernel host (both reproduced the problem)
- using awk program statically-linked on DragonFly host machine (NG)

I made sure that the vkernel and the world are in sync.  If you have any
other idea to try, please let me know.

Thanks.





More information about the Kernel mailing list