Package: initramfs-tools
Severity: normal
Tags: patch

the configure_networking function relies on DEVICE being set, and
conf/initramfs.conf hard-codes this to eth0. though some scripts may call this
from /scripts/local-top, and DEVICE may not be set. even when it is set, it
hard-coding it to eth0 may be the wrong network interface.

the following patch should partially address this by checking for DEVICE when
not defined, and using the first interface with an active link.

diff --git a/conf/initramfs.conf b/conf/initramfs.conf
index 23dd249..471dfea 100644
--- a/conf/initramfs.conf
+++ b/conf/initramfs.conf
@@ -55,7 +55,7 @@ BOOT=local
 # Specify the network interface, like eth0
 #
 
-DEVICE=eth0
+#DEVICE=eth0
 
 #
 # NFSROOT: [ auto | HOST:MOUNT ]
diff --git a/scripts/functions b/scripts/functions
index 0ecb1d6..5444c11 100644
--- a/scripts/functions
+++ b/scripts/functions
@@ -294,6 +294,24 @@ configure_networking()
                done
        fi
 
+       if [ -z "${DEVICE}" ]; then
+               # attempt to detect the first device with an established link.
+               for net_device_path in /sys/class/net/* ; do
+                       net_device=${net_device_path##*/}
+                       case $net_device in
+                               lo) ;;
+                               *)
+                                       if read carrier < 
"$net_device_path/carrier" ; then
+                                               if [ "$carrier" = "1" ]; then
+                                                       DEVICE="$net_device"
+                                                       break
+                                               fi
+                                       fi
+                                       ;;
+                       esac
+               done
+       fi
+
        # networking already configured thus bail out
        [ -n "${DEVICE}" ] && [ -e /tmp/net-"${DEVICE}".conf ] && return 0
 

live well,
  vagrant



-- 
To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20100329042325.gf27...@claws.fglan

Reply via email to