From ef80eb1f042d2bfe8d0588e6d248b42cb1b33552 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Thu, 16 May 2013 14:47:00 +0000 Subject: main/xen: sleep a bit when starting up xen domains fixes #1850 --- main/xen/APKBUILD | 14 +++++++------- main/xen/xendomains.confd | 11 +++++++++++ main/xen/xendomains.initd | 6 ++++++ 3 files changed, 24 insertions(+), 7 deletions(-) (limited to 'main/xen') diff --git a/main/xen/APKBUILD b/main/xen/APKBUILD index a4190705f4..754654b212 100644 --- a/main/xen/APKBUILD +++ b/main/xen/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: William Pitcock pkgname=xen pkgver=4.2.1 -pkgrel=7 +pkgrel=8 pkgdesc="Xen hypervisor" url="http://www.xen.org/" arch="x86 x86_64" @@ -166,8 +166,8 @@ ed262f15fb880badb53575539468646c xenconsoled.initd ec2252c72050d7d5870a3a629b873ba6 xenconsoled.confd 1803ddf6877bdf254082365389a4efa9 xend.initd 9261ad0f285836c1b0ea07f306e4586e xend.confd -c99e24fe50ac40436040e3b012f23cdc xendomains.initd -9b20e056d475b50586cf9e1fc94e13c4 xendomains.confd +197493d10d1adb4daa272b0c0321a54a xendomains.initd +2c80e442cec6dd2a025b61852641834d xendomains.confd 9df68ac65dc3f372f5d61183abdc83ff xen-consoles.logrotate 6a2f777c16678d84039acf670d86fff6 xenqemu.confd f9afbf39e2b5a7d9dde60ebbd249ea7d xenqemu.initd" @@ -194,8 +194,8 @@ ea9171e71ab3d33061979bcf3bb737156192aa4b0be4d1234438ced75b6fdef3 xenstored.conf 2a74be03eb74f6013242a4a5d721df6cb9b959b43c405de1e32813f52d749060 xenconsoled.confd a50a4485e84bcc098ad021556cd2aa7947c228f0a546ab942e880787ced57be3 xend.initd 7f7a96349084474b76af98426387fec12a0684f505d1691091ac3d2556bde2de xend.confd -ce7c7228e5fa903b6662844386b50092bf0448820d6faa3ad71efc06b1aa0cdb xendomains.initd -5cfb81ca252ba7a1c5b9a2ea4bc43a2f4bf16d078fcf99a6274e92c640b72594 xendomains.confd +023ab6fdc4c386e4f134b0cb01a892f4cd4d3f8c51fea70b41ac399d59127fb3 xendomains.initd +2360b1fa1f102ac1b1a6cd0d161a94d13139dfc21d9a2227d35d557b4f04a63e xendomains.confd 0da87a4b9094f934e3de937e8ef8d3afc752e76793aa3d730182d0241e118b19 xen-consoles.logrotate 4cfcddcade5d055422ab4543e8caa6e5c5eee7625c41880a9000b7a87c7c424e xenqemu.confd bf17808a79c57a9efc38b9f14cc87f556b2bb7ecfdec5763d9cf686255a47fce xenqemu.initd" @@ -222,8 +222,8 @@ cfcf8d1af07032bfd3ff9c7a76a8f7d8c6f8b3b084712a494c3ca7624d9a03cbb7cad723b5a1dbc2 30df69cc38d0bed26bc4d6e08a2b62cbdc654d5f663009a05cb3b83b3e3dc5e206362d3fd59abbb753ceb8d6d79eaa6e15d079bb8f4f35dc74667103faf4e85d xenconsoled.confd 55766e22d9374b404b96fba9d30aee49bee6c95fabce9c3d2aed1faba04c1573ecd75fe49e27ce1527ecf9064f53ccc15e4c69a1aa4ea3daa44828f38d687d85 xend.initd 39b38156f0a8498dbbe9aa58d320b85473d0999d62d2e33bb6bf53627fc41f2c67ec318dfab70d2063799f4cd9eeadc015b66fbb211ee3ef765492421a718608 xend.confd -7f8a79424dee62f818a3fa494032c57749b8c216aec0b949417006a01bd0a41ba76e942e1ee06c501e7b09ecc23f50545d3c88e75bbcf8bb31e31c9b404ff1de xendomains.initd -77aeaf1858f944c0c3d6f99787525b48460d33c04182762d716dde8cdb33623d050e9d349a558109788e37ef1e56934232d028e0703078bed288c8c9155a0748 xendomains.confd +5b069cc609b28ba6f05901173e8ad9688a1396de2699791182688119b96386fed4696d469eb8f96f2966211647379f604593bdc625dbda765bd21dc19f742625 xendomains.initd +7c1e32d07aefbde1904ca2d98f9a415543cea7ab8e039b05e0b111e37e78c07c40b540e439b3656d5840dfd76e35e07cf1d6ddea431163d975b1ddf5ddac50d3 xendomains.confd ab2105c75cfe01768aecd5bcbb56269d63666e8a44e42b6a83aee87df6c84ee2f9ab249171c21b2e09f8fec2cae8318f6e87d160989398a3e7dd68db8d52c426 xen-consoles.logrotate bdbe15c924071cdc2d0f23e53ba8e3f837d4b5369bfb218abd3405f9bef25d105269aaf0784baeb69c073a5786b8c82ffdfd414e86874da34293cfdc2c497928 xenqemu.confd 2341a01a000e4badd9dbfd122e7eb3e594982921a80186c0e4174744daf31114c384b42458864d9904ed1b463746efb774efa707ad48280a25ce897ef5ac9e83 xenqemu.initd" diff --git a/main/xen/xendomains.confd b/main/xen/xendomains.confd index ed87b816ff..59985ee50b 100644 --- a/main/xen/xendomains.confd +++ b/main/xen/xendomains.confd @@ -28,3 +28,14 @@ SCREEN_LOG_INTERVAL="1" SCREENDIR=/tmp/screens/S-root +## Type: integer +## Default: 5000000 +# +# When creating a guest domain, it is sensible to allow a little time for it +# to get started before creating another domain or proceeding through the +# boot process. Without this, the booting guests will thrash the disk as they +# start up. This timeout (in microseconds) specifies the delay after guest +# domain creation. +# +XENDOMAINS_CREATE_USLEEP=5000000 + diff --git a/main/xen/xendomains.initd b/main/xen/xendomains.initd index ff6fcdb138..794a78697f 100644 --- a/main/xen/xendomains.initd +++ b/main/xen/xendomains.initd @@ -68,9 +68,15 @@ start() { fi fi # Create all domains with config files in AUTODIR. + want_usleep= for dom in $(ls "${AUTODIR:=/etc/xen/auto}/"* 2>/dev/null | sort); do name=$(get_domname ${dom}) if ! is_running ${name} ; then + if [ -n "$want_usleep" ]; then + usleep ${XENDOMAINS_CREATE_USLEEP:=5000000} + else + want_usleep=1 + fi ebegin " Starting domain ${name}" if using_screen ; then ${screen_cmd} screen -t ${name} xl create ${dom} -c -- cgit v1.2.3