Merge ~smoser/cloud-init:bug/1379080-fix-xen-kernel-detection into cloud-init:ubuntu/devel

Proposed by Scott Moser
Status: Merged
Merged at revision: b7df5be278f61c362e39eb0812600706a0b480ba
Proposed branch: ~smoser/cloud-init:bug/1379080-fix-xen-kernel-detection
Merge into: cloud-init:ubuntu/devel
Diff against target: 38 lines (+18/-0)
1 file modified
debian/update-grub-legacy-ec2 (+18/-0)
Reviewer Review Type Date Requested Status
Dan Watkins Needs Fixing
cloud-init Commiters Pending
Review via email: mp+314623@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Dan Watkins (oddbloke) :
review: Needs Fixing
Revision history for this message
Scott Moser (smoser) wrote :

comments addressed.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/debian/update-grub-legacy-ec2 b/debian/update-grub-legacy-ec2
2index 19648f6..cb4e170 100755
3--- a/debian/update-grub-legacy-ec2
4+++ b/debian/update-grub-legacy-ec2
5@@ -1398,8 +1398,23 @@ fi
6
7
8 if ! type is_xen_kernel >/dev/null 2>&1; then
9+ check_xen_config_for_kernel() {
10+ # input is like /boot/vmlinuz-2.6.35-13-virtual
11+ # expected config path is /boot/config-2.6.35-13-virtual
12+ local kernel="$1" config="" dir="" bname=""
13+ dir=${kernel%/*}
14+ [ "$dir" = "$kernel"] && dir="."
15+ bname=${kernel##*/}
16+ config="$dir/config-${bname#*-}"
17+ [ -f "$config" ] || return 1
18+ grep -q CONFIG_XEN=y "$config"
19+ }
20+
21 is_xen_kernel() {
22 # input is like /boot/vmlinuz-2.6.35-13-virtual
23+ # return whether or not this kernel is xen bootable.
24+ check_xen_config_for_kernel "$1" && return 0
25+
26 # get the version string out of it.
27 local ver_flavor="";
28 ver_flavor="${1##*vmlinuz-}"
29@@ -1418,6 +1433,9 @@ if ! type is_xen_kernel >/dev/null 2>&1; then
30 fi
31
32 for kern in /boot/vmlinuz-*; do
33+ case "$kern" in
34+ *.signed) continue;;
35+ esac
36 is_xen_kernel "${kern}" &&
37 xen_verlist="${xen_verlist} ${kern#/boot/vmlinuz-}"
38 done

Subscribers

People subscribed via source and target branches