[26015] in Source-Commits
/svn/athena r25347 - trunk/debathena/config/auto-update/debian
daemon@ATHENA.MIT.EDU (Jonathan D Reed)
Tue Aug 2 17:22:46 2011
Date: Tue, 2 Aug 2011 17:22:39 -0400
From: Jonathan D Reed <jdreed@MIT.EDU>
Message-Id: <201108022122.p72LMdMb018140@drugstore.mit.edu>
To: source-commits@mit.edu
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Author: jdreed
Date: 2011-08-02 17:22:39 -0400 (Tue, 02 Aug 2011)
New Revision: 25347
Modified:
trunk/debathena/config/auto-update/debian/athena-auto-upgrade
trunk/debathena/config/auto-update/debian/changelog
Log:
In auto-update:
* Reboot with 'reboot=pci' on the Dell 790 (Trac #993)
* Wave dead chickens at the framebuffer on the Vostro 320 (Trac #1004)
Modified: trunk/debathena/config/auto-update/debian/athena-auto-upgrade
===================================================================
--- trunk/debathena/config/auto-update/debian/athena-auto-upgrade 2011-08-02 13:00:45 UTC (rev 25346)
+++ trunk/debathena/config/auto-update/debian/athena-auto-upgrade 2011-08-02 21:22:39 UTC (rev 25347)
@@ -171,23 +171,40 @@
# This is just the guts of the hackboot script:
dkargs="DEBCONF_DEBUG=5"
kargs="$knetinfo locale=en_US $kbdcode \
- interface=auto acpi=off \
+ interface=auto \
url=http://18.9.60.73/installer/${UBUNTU_RELEASE}/debathena.preseed \
debathena/pxetype=cluster --"
+product_name="$(cat /sys/class/dmi/id/product_name | sed -e 's/[ ]*$//')"
+# Yes, really. The actual value of product_name on the Vostro is:
+# "Vostro 320 "
+case "$product_name" in
+ "Vostro 320")
+ # This is not so much Vostro 320-specific as it is i915 specific
+ # Known to be necessary on PCI ID 8086:2e32, rev 03
+ debug "Waving dead chicken..."
+ # Run the video card's POST to reset it
+ vbetool post
+ # Disable the framebuffer, falling back to VGA
+ echo 0 > /sys/class/vtconsole/vtcon1/bind
+ ;;
+ "OptiPlex 790")
+ debug "Adding 'reboot=pci' for Dell 790"
+ kargs="$kargs reboot=pci"
+ ;;
+esac
if [ $(echo $kargs | wc -c) -ge 512 ]; then
complain "kargs exceeds 512 bytes. That's not good."
fi
-debug "Would execute kexec with --append=\"$dkargs $kargs\""
-if [ $DEBUG -eq 1 ]; then
- exit 0
-fi
# Don't kexec -e here, because modern Ubuntu is unable to kexec while
# X is running. Instead, kexec -l and let the init script take care of.
# Until Oneiric, when this will probably stop working if kexec-tools hasn't
# been Upstartified.
-/sbin/kexec -l linux --append="$dkargs $kargs" --initrd=initrd.gz
+$MAYBE /sbin/kexec -l linux --append="$dkargs $kargs" --initrd=initrd.gz
+[ $DEBUG -eq 1 ] && exit 0
if [ "`cat /sys/kernel/kexec_loaded`" != "1" ]; then
echo "Hrm, looks like kexec -l didn't work. This upgrade might fail."
+else
+ echo "Kernel loaded. Rebooting in order to exec it."
fi
reboot
exit 0
Modified: trunk/debathena/config/auto-update/debian/changelog
===================================================================
--- trunk/debathena/config/auto-update/debian/changelog 2011-08-02 13:00:45 UTC (rev 25346)
+++ trunk/debathena/config/auto-update/debian/changelog 2011-08-02 21:22:39 UTC (rev 25347)
@@ -1,13 +1,14 @@
-debathena-auto-update (1.27) UNRELEASED; urgency=low
+debathena-auto-update (1.27) unstable; urgency=low
[ Geoffrey Thomas ]
* Call dh_installinit with --no-start, since the debathena-auto-update
initscript has no hope of working from inside a postinst
[ Jonathan Reed ]
- * Always kexec with acpi=off because either Dell or Linus sucks
+ * Reboot with 'reboot=pci' on the Dell 790 (Trac #993)
+ * Wave dead chickens at the framebuffer on the Vostro 320 (Trac #1004)
- -- Jonathan Reed <jdreed@mit.edu> Sun, 31 Jul 2011 15:40:05 -0400
+ -- Jonathan Reed <jdreed@mit.edu> Tue, 02 Aug 2011 16:59:35 -0400
debathena-auto-update (1.26) unstable; urgency=low