Skip to content
Snippets Groups Projects
Commit 28dab85b authored by scjody's avatar scjody
Browse files

Branch HEAD

r=brian

Merge from b_release_1_4_6: Run update_oldconfig only if oldconfig fails;
always strace update_oldconfig so we can debug it.
parent 6a0c3faf
No related branches found
No related tags found
No related merge requests found
...@@ -378,33 +378,42 @@ depend_kernel() ...@@ -378,33 +378,42 @@ depend_kernel()
$MAKE "$MAKE_CC" mrproper || fatal 1 "Error running make mrproper" $MAKE "$MAKE_CC" mrproper || fatal 1 "Error running make mrproper"
rm -f rpm-release rm -f rpm-release
cp "$CONFIG_FILE" .config cp "$CONFIG_FILE" .config
# use the expect script to "make oldconfig" and answer the questions for local UPDATE_OLDCONFIG=
# new items conservatively. QA will get notified on anything newly added for oc in oldconfig_nonint silentoldconfig oldconfig ; do
# for them to review and adjust accordingly. if grep -q "$oc" Makefile ; then
local logfile=$(mktemp /tmp/XXXXXX) timed_run 300 $MAKE "$MAKE_CC" $oc || UPDATE_OLDCONFIG=1
#timed_run 300 $TOPDIR/build/update_oldconfig $logfile break
#local RC=${PIPESTATUS[0]}
#local RC=$(strace -f -o update_oldconfig.strace bash -c "$TOPDIR/build/update_oldconfig $logfile; echo \$?")
$TOPDIR/build/update_oldconfig $logfile
local RC=${PIPESTATUS[0]}
if [ $RC -eq 143 ]; then
fatal 1 "update_oldconfig timed out"
elif [ $RC -ne 0 ]; then
# dump the log
cat $logfile
rm -f $logfile
if [ -f update_oldconfig.strace ]; then
cat update_oldconfig.strace
rm -f update_oldconfig.strace
fi fi
fatal 1 "update_oldconfig failed: $RC. See log above." done
fi
rm -f $logfile if [ "$UPDATE_OLDCONFIG" ] ; then
# now notify if resulting .config is different than $CONFIG_FILE # use the expect script to "make oldconfig" and answer the questions for
local tmpfile=$(mktemp /tmp/XXXXXX) # new items conservatively. QA will get notified on anything newly added
diff -I '^#.*' -u "$CONFIG_FILE" .config >$tmpfile # for them to review and adjust accordingly.
if [ -s $tmpfile ]; then local logfile=$(mktemp /tmp/XXXXXX)
{ cat <<EOF #timed_run 300 $TOPDIR/build/update_oldconfig $logfile
#local RC=${PIPESTATUS[0]}
local RC=$(strace -f -o update_oldconfig.strace bash -c "$TOPDIR/build/update_oldconfig $logfile; echo \$?")
#$TOPDIR/build/update_oldconfig $logfile
#local RC=${PIPESTATUS[0]}
if [ $RC -eq 143 ]; then
fatal 1 "update_oldconfig timed out"
elif [ $RC -ne 0 ]; then
# dump the log
cat $logfile
rm -f $logfile
if [ -f update_oldconfig.strace ]; then
cat update_oldconfig.strace
rm -f update_oldconfig.strace
fi
fatal 1 "update_oldconfig failed: $RC. See log above."
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
if [ -s $tmpfile ]; then
{ cat <<EOF
To: qa@lists.clusterfs.com To: qa@lists.clusterfs.com
Subject: kernel_config change Subject: kernel_config change
...@@ -412,14 +421,16 @@ The result of a make oldconfig on file $CONFIG_FILE resulted in a ...@@ -412,14 +421,16 @@ The result of a make oldconfig on file $CONFIG_FILE resulted in a
difference when compared to .config in the following way: difference when compared to .config in the following way:
EOF EOF
cat $tmpfile cat $tmpfile
echo -e "\n\nPlease consider updating $CONFIG_FILE." echo -e "\n\nPlease consider updating $CONFIG_FILE."
# not sure these are entirely useful. the above and "patch" are good # not sure these are entirely useful. the above and "patch" are good
#echo -e "\nThe entire new .config file:\n" #echo -e "\nThe entire new .config file:\n"
#cat .config #cat .config
} | sendmail -fqa@clusterfs.com -t } | sendmail -fqa@clusterfs.com -t
fi
rm -f $tmpfile
fi fi
rm -f $tmpfile
case "$VERSION" in case "$VERSION" in
2.6*) 2.6*)
$MAKE "$MAKE_CC" include/asm $MAKE "$MAKE_CC" include/asm
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment