From 88c2acd706d5a1cac28dbbbf91e24defa0e3e5a1 Mon Sep 17 00:00:00 2001 From: Dirk von Suchodoletz Date: Tue, 4 Mar 2008 19:11:17 +0000 Subject: 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 --- initramfs/initrd-stuff/init | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'initramfs/initrd-stuff/init') 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) -- cgit v1.2.3-55-g7522