Whamcloud - gitweb
Try to get some more information when update_oldconfig fails. Probably some
authorbrian <brian>
Mon, 20 Mar 2006 16:38:32 +0000 (16:38 +0000)
committerbrian <brian>
Mon, 20 Mar 2006 16:38:32 +0000 (16:38 +0000)
missing expect patterns, etc.

build/lmake
build/update_oldconfig

index 65cbaa0..d258b72 100755 (executable)
@@ -381,10 +381,17 @@ depend_kernel()
     # use the expect script to "make oldconfig" and answer the questions for
     # new items conservatively.  QA will get notified on anything newly added
     # for them to review and adjust accordingly.
     # use the expect script to "make oldconfig" and answer the questions for
     # new items conservatively.  QA will get notified on anything newly added
     # for them to review and adjust accordingly.
-    timed_run 300 $TOPDIR/build/update_oldconfig
-    if [ $? -eq 143 ]; then
+    local logfile=$(mktemp /tmp/XXXXXX)
+    timed_run 300 $TOPDIR/build/update_oldconfig $logfile
+    if [ ${PIPESTATUS[0]} -eq 143 ]; then
         fatal 1 "update_oldconfig timed out"
         fatal 1 "update_oldconfig timed out"
+    elif [ ${PIPESTATUS[0]} -ne 0 ]; then
+       # dump the log
+        cat $logfile
+        rm -f $logfile
+        fatal 1 "update_oldconfig failed: $?. See log above."
     fi
     fi
+    rm -f $logfile
     # now notify if resulting .config is different than $CONFIG_FILE
     local tmpfile=$(mktemp /tmp/XXXXXX)
     diff -I '^#.*' -u "$CONFIG_FILE" .config >$tmpfile
     # now notify if resulting .config is different than $CONFIG_FILE
     local tmpfile=$(mktemp /tmp/XXXXXX)
     diff -I '^#.*' -u "$CONFIG_FILE" .config >$tmpfile
index a9b240d..3332bf7 100755 (executable)
@@ -1,6 +1,11 @@
-#!/usr/bin/expect
+#!/usr/bin/expect -f
 
 
+# log all interaction to a file to diagnose failures
+log_file [index $argv 0]
+
+# and not stddout
 log_user 0
 log_user 0
+
 set spawnid [spawn make oldconfig]
 
 #match_max 200
 set spawnid [spawn make oldconfig]
 
 #match_max 200
@@ -10,7 +15,7 @@ set timeout 30
 
 expect {
     timeout {
 
 expect {
     timeout {
-        puts "timeout"
+        puts "timeout: $expect_out(buffer)"
         exit 1
     }
     -re "\n  *(\[^\n]* \\\[N\/y\/\\?] \\(NEW\\)) " {
         exit 1
     }
     -re "\n  *(\[^\n]* \\\[N\/y\/\\?] \\(NEW\\)) " {