# Note currently only nodcb is supported, the dcb option is reserved for
# future use.
+PATH=$PATH:/sbin:/usr/sbin
+
# Huh? Missing arguments ??
[ -z "$1" -o -z "$2" ] && exit 1
dcb=$2
/sbin/ip link set "$netif" up
-echo -n "$netif" > /sys/module/fcoe/parameters/create
+if [ "$dcb" = "dcb" ]; then
+ # Note lldpad will stay running after switchroot, the system initscripts
+ # are to kill it and start a new lldpad to take over. Data is transfered
+ # between the 2 using a shm segment
+ lldpad -d
+ dcbtool sc "$netif" dcb on
+ dcbtool sc "$netif" app:fcoe e:1 a:1 w:1
+ fipvlan "$netif" -c -s
+else
+ echo -n "$netif" > /sys/module/fcoe/parameters/create
+fi
#!/bin/bash
-dracut_install ip
+dracut_install ip dcbtool fipvlan
+
+inst lldpad
+mkdir -p "$initdir/var/lib/lldpad"
inst "$moddir/fcoe-up" "/sbin/fcoe-up"
inst_hook pre-udev 60 "$moddir/fcoe-genrules.sh"
parse_fcoe_opts
-# currently only nodcb is supported
-if [ "$fcoe_dcb" != "nodcb" ] ; then
+if [ "$fcoe_dcb" != "nodcb" -a "$fcoe_dcb" != "dcb" ] ; then
die "Invalid FCoE DCB option: $fcoe_dcb"
fi