Index: dahdi.init
===================================================================
--- dahdi.init	(revision 4858)
+++ dahdi.init	(working copy)
@@ -155,7 +155,6 @@
 		# what?
 	#fi
 	echo "Loading DAHDI hardware modules:"
-	modprobe dahdi
 	for line in $modules; do
 		if [ $system = debian ]; then
 			echo -n "   ${line}: " 
@@ -170,6 +169,19 @@
 		echo ""
 	done
 
+	xpp_startup
+
+	if [ ! -e /proc/dahdi/1 ]; then
+		echo "No hardware timing source found in /proc/dahdi, loading dahdi_dummy"
+		modprobe dahdi_dummy 2> /dev/null
+	fi
+
+	if ! lsmod | grep -q dahdi; then
+		echo >&2 "DAHDI not loaded. Aborting init script"
+		exit 1 # TODO: fail in this case?
+	fi
+
+
 	TMOUT=$DAHDI_DEV_TIMEOUT # max secs to wait
 
 	while [ ! -d /dev/dahdi ] ; do
@@ -181,13 +193,6 @@
 		fi
 	done
 
-	xpp_startup
-
-	if [ ! -e /proc/dahdi/1 ]; then
-		echo "No hardware timing source found in /proc/dahdi, loading dahdi_dummy"
-		modprobe dahdi_dummy 2> /dev/null
-	fi
-
 	if [ $system = debian ]; then
 	    echo -n "Running dahdi_cfg: " 
 	    $DAHDI_CFG_CMD 2> /dev/null && echo -n "done"
