From 28d5b6abea9f7a3022aaf6e7c82ef90ecdf652c4 Mon Sep 17 00:00:00 2001 From: Dirk von Suchodoletz Date: Wed, 30 May 2007 22:53:30 +0000 Subject: Small fix for dnbd2 if the interface is dowm for short period (dhclient related problem which is shared with the other network block devices too) and error message ... git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1118 95ad53e4-c205-0410-b2fa-d234c58c8868 --- initramfs/initrd-stuff/init | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'initramfs/initrd-stuff/init') diff --git a/initramfs/initrd-stuff/init b/initramfs/initrd-stuff/init index 9c87ce79..f8905d35 100755 --- a/initramfs/initrd-stuff/init +++ b/initramfs/initrd-stuff/init @@ -389,17 +389,25 @@ if [ -n "${nbdmod}" ] ; then # switch off unneeded block read ahead echo "0" > /sys/block/nbd0/queue/read_ahead_kb ;; - # dnbd2 by Vito di Leo + # dnbd2 by Vito Di Leo dnbd2) RDEV=/dev/vnbd0 waitfor "${RDEV}" 20000 || error "$init_nbddev" echo $nbdhost $nbdport > /sys/block/vnbd0/server0/sock echo 1 > /sys/block/vnbd0/config/vid echo 1 > /sys/block/vnbd0/config/rid - echo 1 > /sys/block/vnbd0/config/running echo noop > /sys/block/vnbd0/queue/scheduler - # switch off unneeded block read ahead - echo "0" > /sys/block/vnbd0/queue/read_ahead_kb + i=0 + while [ $(cat /sys/block/vnbd0/config/running) != 1 ] ; do + echo 1 > /sys/block/vnbd0/config/running + usleep 50 + i=$(expr $i + 1) + if [ $i -ge 100 ] ; then + error "$init_dnbd2s" + break + fi + done + # echo "0" > /sys/block/vnbd0/queue/read_ahead_kb ;; # dnbd by Thorsten Zitterell dnbd) -- cgit v1.2.3-55-g7522