From: Harald Hoyer Date: Mon, 31 Mar 2014 14:21:49 +0000 (+0200) Subject: fcoe: workaround fcoe timing issues X-Git-Tag: 038~54 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3c530fc528d61ea2701dfb46ccd90e218a6d8aef;p=thirdparty%2Fdracut.git fcoe: workaround fcoe timing issues --- diff --git a/modules.d/95fcoe/fcoe-genrules.sh b/modules.d/95fcoe/fcoe-genrules.sh index 80894ed2d..fa3af6df0 100755 --- a/modules.d/95fcoe/fcoe-genrules.sh +++ b/modules.d/95fcoe/fcoe-genrules.sh @@ -13,4 +13,4 @@ else printf 'ACTION=="add", SUBSYSTEM=="net", NAME=="%s", RUN+="/sbin/initqueue --onetime --unique --name fcoe-up-$env{INTERFACE} /sbin/fcoe-up $env{INTERFACE} %s"\n' "$fcoe_interface" "$fcoe_dcb" fi -} > /etc/udev/rules.d/92-fcoe.rules +} >> /etc/udev/rules.d/92-fcoe.rules diff --git a/modules.d/95fcoe/fcoe-up.sh b/modules.d/95fcoe/fcoe-up.sh index dd4535889..d8c73c814 100755 --- a/modules.d/95fcoe/fcoe-up.sh +++ b/modules.d/95fcoe/fcoe-up.sh @@ -36,10 +36,27 @@ if [ "$dcb" = "dcb" ]; then sleep 1 i=$(($i+1)) done - dcbtool sc "$netif" dcb on - sleep 1 - dcbtool sc "$netif" app:fcoe e:1 a:1 w:1 + + # on some systems lldpad needs some time + # sleep until we find a better solution + sleep 30 + + while [ $i -lt 60 ]; do + dcbtool sc "$netif" dcb on && break + info "Retrying to turn dcb on" + sleep 1 + i=$(($i+1)) + done + + while [ $i -lt 60 ]; do + dcbtool sc "$netif" app:fcoe e:1 a:1 w:1 && break + info "Retrying to turn fcoe on" + sleep 1 + i=$(($i+1)) + done + sleep 1 + fipvlan "$netif" -c -s elif [ "$netdriver" = "bnx2x" ]; then # If driver is bnx2x, do not use /sys/module/fcoe/parameters/create but fipvlan