misc/68528: make release fails with mdconfig

TAOKA Fumiyoshi fmysh at iijmio-mail.jp
Wed Jun 30 13:10:45 PDT 2004


>Number:         68528
>Category:       misc
>Synopsis:       make release fails with mdconfig
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 30 20:10:18 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     TAOKA Fumiyoshi
>Release:        FreeBSD 5.2-CURRENT i386
>Organization:
>Environment:
System: FreeBSD prime.quad.dyndns.org 5.2-CURRENT FreeBSD 5.2-CURRENT #8: Thu Jul 1 04:19:59 JST 2004 fmysh at prime.quad.dyndns.org:/usr/obj/usr/src/sys/DPI533 i386

>Description:

`make release' fails at creating a memory disk for mfsroot in
release.9 target. Although the md node was actually created,
immediate `test -c' doesn't pass.

>How-To-Repeat:
	
In a chrooted environment for `make release'

# make release.9
cp /R/stage/trees/base/etc/disktab /etc
rm -rf /R/stage/mfsfd
mkdir /R/stage/mfsfd
cd /R/stage/mfsfd &&  mkdir -p etc/defaults dev mnt stand/etc/defaults stand/help
( cd /R/stage/mfsfd &&  for dir in bin sbin ; do  ln -sf /stand $dir;  done )
cp /R/stage/trees/base/sbin/dhclient-script /R/stage/mfsfd/stand
cp /usr/src/release/../etc/usbd.conf /R/stage/mfsfd/etc/usbd.conf
( for F in defaults/rc.conf netconfig protocols ; do  sed -e '/^#.*$/d' -e 's/[:space:]*#.*$//g'  /R/stage/trees/base/etc/$F > /R/stage/mfsfd/stand/etc/$F ;  done )
grep -E '^(ftp|nameserver|domain|sunrpc|cmd|nfsd)[^-\w]'  /R/stage/trees/base/etc/services |  sed -e '/^#.*$/-e 's/[:space:]*#.*$//g'  > /R/stage/mfsfd/stand/etc/services
grep 'operator' /R/stage/trees/base/etc/group  > /R/stage/mfsfd/stand/etc/group
ln /R/stage/mfsfd/stand/etc/services /R/stage/mfsfd/etc/services
ln /R/stage/mfsfd/stand/etc/group /R/stage/mfsfd/etc/group
ln /R/stage/mfsfd/stand/etc/netconfig /R/stage/mfsfd/etc/netconfig
cp /R/stage/trees/base/COPYRIGHT /R/stage/mfsfd/stand/help/COPYRIGHT.hlp
test -f /usr/src/release/install.cfg  && cp /usr/src/release/install.cfg /R/stage/mfsfd
*** Error code 1 (ignored)
sh -e /usr/src/release/scripts/doFS.sh bsdlabel "" /R/stage/mfsroot/mfsroot /R/stage /mnt  4320 /R/stage/mfsfd 8000 minimum3
+ export BLOCKSIZE=512
+ DISKLABEL=bsdlabel
+ shift
+ MACHINE=
+ shift
+ FSIMG=/R/stage/mfsroot/mfsroot
+ shift
+ RD=/R/stage
+ shift
+ MNT=/mnt
+ shift
+ FSSIZE=4320
+ shift
+ FSPROTO=/R/stage/mfsfd
+ shift
+ FSINODE=8000
+ shift
+ FSLABEL=minimum3
+ shift
+ [ 4320 -eq 0 -a minimum3 = auto ]
+ rm -f /R/stage/mfsroot/mfsroot
+ dd of=/R/stage/mfsroot/mfsroot if=/dev/zero count=4320 bs=1k
+ uname -r
+ [ -f /R/stage/trees/base/boot/boot ]
+ BOOT=-B -b /R/stage/trees/base/boot/boot
+ dofs_md
+ [ x != x ]
+ mdconfig -a -t vnode -f /R/stage/mfsroot/mfsroot
+ MDDEVICE=md1
+ [ ! -c /dev/md1 ]
+ echo No /dev/md1
No /dev/md1
+ exit 1
*** Error code 1

Stop in /usr/src/release.

>Fix:

Adding a short pause after creating the md node for mfsroot
solved the problem for my environment.

--- src/release/scripts/doFS.sh.orig        Thu Jul  1 03:47:59 2004
+++ src/release/scripts/doFS.sh     Thu Jul  1 03:48:21 2004
@@ -64,6 +64,7 @@
        fi

        MDDEVICE=`mdconfig -a -t vnode -f ${FSIMG}`
+       sleep 1
        if [ ! -c /dev/${MDDEVICE} ] ; then
                echo "No /dev/$MDDEVICE" 1>&2
                exit 1
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list