buildworld - Add sync/sleep safety before mkinitrd
authorMatthew Dillon <dillon@apollo.backplane.com>
Fri, 27 Jun 2014 04:04:09 +0000 (21:04 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Fri, 27 Jun 2014 04:04:09 +0000 (21:04 -0700)
* Try to mitigate a bug in earlier versions of DragonFly that can be
  triggered by mkinitrd's use of the VN device by ensuring that the world
  is synced to disk before running mkinitrd.

Makefile.inc1

index 860362c..ffa800f 100644 (file)
@@ -476,6 +476,8 @@ installcheck:
 #
 # Backs up the current world if ${AUTO_BACKUP} is writable.
 # Installs everything compiled by a 'buildworld'.
+#
+# Includes sleep/sync safety before running mkinitrd.
 
 installworld: installcheck
        -@mkdir -p ${AUTO_BACKUP} > /dev/null 2>&1
@@ -486,6 +488,7 @@ installworld: installcheck
 
        cd ${.CURDIR}; ${IMAKE} re${.TARGET:S/world$//}
        ${INSTALL} -o root -g wheel -m 644 ${.CURDIR}/Makefile_upgrade.inc ${DESTDIR}/etc/upgrade/
+       sync; sleep 2; sync; sleep 2
        mkinitrd -b ${DESTDIR}/boot
 
 #