Commit 89cd95a8 authored by David Johnson's avatar David Johnson

Enable the vnodesetup hackandwait parallelization hack for Docker.

parent 80a3ee34
......@@ -955,7 +955,7 @@ sub hackwaitandexit($)
elsif ($fakevnode) {
$goofy = CONFDIR() . "/evproxy.pid";
}
elsif ($dojail && (-e "/vz" || -e "/etc/xen")) {
elsif ($dojail && (-e "/vz" || -e "/etc/xen" || -e "/etc/emulab/docker")) {
$goofy = CONFDIR() . "/running";
}
else {
......
......@@ -128,6 +128,15 @@ my $debug = 0;
my $lockdebug = 0;
my $sleepdebug = 0;
#
# Set to enable vnodesetup to exit before vnode is completely up
# (see vnodesetup::hackwaitandexit). Allows more parallelism during
# boot-time vnode setup. Note that concurrency may still be constrained
# by $MAXCONCURRENT (defined below) which limits how many new VMs can
# be created at once.
#
my $vsrelease = "immediate"; # or "early" or "none"
#
# Should we use LVM for extra storage space? This should remain set.
#
......@@ -1776,6 +1785,17 @@ sub rootPreConfigNetwork($$$$)
if ($lockdebug);
TBScriptUnlock();
#
# Let vnodesetup exit early, so that bootvnodes delays minimally per
# vnode. I guess we figure if we can get through this call, we've
# made it through the obvious failures in the overall preparatory
# code in mkvnode.pl.
#
if ($vsrelease eq "immediate") {
TBDebugTimeStamp("rootPreConfigNetwork: touching $VMS/$vnode_id/running");
mysystem2("touch $VMS/$vnode_id/running");
}
return 0;
bad:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment