summaryrefslogtreecommitdiffstats
path: root/initramfs/initrd-stuff/init
diff options
context:
space:
mode:
authorDirk von Suchodoletz2008-03-04 20:11:17 +0100
committerDirk von Suchodoletz2008-03-04 20:11:17 +0100
commit88c2acd706d5a1cac28dbbbf91e24defa0e3e5a1 (patch)
treec1127aac3ad7db9d9232de80c12f71752cd340a6 /initramfs/initrd-stuff/init
parentFirst try of "selfcontained" InitRamFS without external glibc. Created (diff)
downloadcore-88c2acd706d5a1cac28dbbbf91e24defa0e3e5a1.tar.gz
core-88c2acd706d5a1cac28dbbbf91e24defa0e3e5a1.tar.xz
core-88c2acd706d5a1cac28dbbbf91e24defa0e3e5a1.zip
Fixes for DNDB2 in SLX init, update of mkcdboot.uclib with ipcalc
applet. git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@1598 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'initramfs/initrd-stuff/init')
-rwxr-xr-xinitramfs/initrd-stuff/init20
1 files changed, 12 insertions, 8 deletions
diff --git a/initramfs/initrd-stuff/init b/initramfs/initrd-stuff/init
index d7ed6037..480c293c 100755
--- a/initramfs/initrd-stuff/init
+++ b/initramfs/initrd-stuff/init
@@ -448,13 +448,19 @@ if [ -n "${bldmod}" ] ; then
dnbd2)
RDEV=/dev/vnbd0
waitfor "${RDEV}" 20000 || error "$init_nbddev"
+ # quickhack, should be read in from URI
+ echo 1 > /sys/block/vnbd0/config/vid
+ echo 1 > /sys/block/vnbd0/config/rid
# check for others in machine-setup and then kernel cmdline
rootfs="$(sed -n "/rootfs=/p" /etc/initramfs-setup| \
sed "s,rootfs=,,;s,\",,g") "
- [ -z "$rootfs" ] && \
+ [ "$rootfs" = " " ] && \
rootfs="$(cat /proc/cmdline|sed "s,.*rootfs=\",,;s,\".*,,") "
+ usleep 5000
i=0
- while [ "x$bldhost" != "x" ]; do
+ # assume no more than 16 different dnbd2 servers (default 4)
+ while [ "x$bldhost" != "x" -a $i -lt 16 ]; do
+ #echo "I: $i R: $rootfs P:$bldport H:$bldhost"
echo $bldhost $bldport > /sys/block/vnbd0/server${i}/sock
i=$(($i + 1))
rootfs=${rootfs#* }
@@ -462,12 +468,10 @@ if [ -n "${bldmod}" ] ; then
bldhost=$(uri_token $bldsp server)
bldport=$(uri_token $bldsp port)
done
- # quickhack, should be read in from URI
- echo 1 > /sys/block/vnbd0/config/vid
- echo 1 > /sys/block/vnbd0/config/rid
- echo deadline > /sys/block/vnbd0/queue/scheduler
+ # the deadline, cfq scheduler seem not a good idea here
+ echo noop > /sys/block/vnbd0/queue/scheduler
+ # needed for some reason to settle initialization
i=0
- sleep 1
while [ $(cat /sys/block/vnbd0/config/running) != 1 ] ; do
echo 1 > /sys/block/vnbd0/config/running
usleep 5000
@@ -476,7 +480,7 @@ if [ -n "${bldmod}" ] ; then
error "$init_dnbd2s"; break
fi
done
- echo "32" > /sys/block/vnbd0/queue/read_ahead_kb
+ echo "64" > /sys/block/vnbd0/queue/read_ahead_kb
;;
# dnbd by Thorsten Zitterell
dnbd)