To verify this is fixed, I have done the following.
For good measure, I've also successfully booted the above
with additional parameter '-smp cpus=2'. That verifies that there is no
obvious regression on SMP system.
# patch the image to have a root passwd and disable cloud-init for simplicity.
$ sudo mount-image-callback disk.img -- chroot _MOUNTPOINT_ sh -exc '
touch /etc/cloud/cloud-init.disabled
echo "root:root" | chpasswd'
# attached 'get-kernels' enables proposed, installs linux-virtual into disk.img
# and copies kernels out to out.d
$ ./get-kernels disk.img linux-virtual out.d
$ for i in out.d/*info; do echo == $i ==; cat $i; done
== out.d/build.info ==
build_name: server
serial: 20170106.1
== out.d/vmlinuz-4.4.0-57-generic.pkg-info ==
linux-image-4.4.0-57-generic: /boot/vmlinuz-4.4.0-57-generic
== out.d/vmlinuz-4.4.0-59-generic.pkg-info ==
linux-image-4.4.0-59-generic: /boot/vmlinuz-4.4.0-59-generic
# if you set 'ver' to 4.4.0-57 (from released kernel version)
# then you see failure to find root device from the initramfs
# if you set 'ver' to 4.4.0-59 (from -proposed) then it finds root,
# and you can log in as root on console with 'root'.
To verify this is fixed, I have done the following.
For good measure, I've also successfully booted the above
with additional parameter '-smp cpus=2'. That verifies that there is no
obvious regression on SMP system.
$ img_url="http:// cloud-images. ubuntu. com/daily/ server/ xenial/ current/ xenial- server- cloudimg- amd64-disk1. img"
$ wget "${img_url}" -O disk.img
# patch the image to have a root passwd and disable cloud-init for simplicity. callback disk.img -- chroot _MOUNTPOINT_ sh -exc ' cloud-init. disabled
$ sudo mount-image-
touch /etc/cloud/
echo "root:root" | chpasswd'
# attached 'get-kernels' enables proposed, installs linux-virtual into disk.img 4.4.0-57- generic. pkg-info == 4.4.0-57- generic: /boot/vmlinuz- 4.4.0-57- generic 4.4.0-59- generic. pkg-info == 4.4.0-59- generic: /boot/vmlinuz- 4.4.0-59- generic
# and copies kernels out to out.d
$ ./get-kernels disk.img linux-virtual out.d
$ for i in out.d/*info; do echo == $i ==; cat $i; done
== out.d/build.info ==
build_name: server
serial: 20170106.1
== out.d/vmlinuz-
linux-image-
== out.d/vmlinuz-
linux-image-
$ kver=4.4.0-57 ; qemu-system-x86_64 -enable-kvm -m 512 \ img,if= none,format= qcow2,id= nvme0 \ nvme0,serial= nvme-0 \ $kver-generic \ img-$kver- generic \ cloudimg- rootfs console=ttyS0"
-drive file=disk.
-device nvme,drive=
-snapshot -nographic -echr 0x05 \
-kernel out.d/vmlinuz-
-initrd out.d/initrd.
-append "root=LABEL=
# if you set 'ver' to 4.4.0-57 (from released kernel version)
# then you see failure to find root device from the initramfs
# if you set 'ver' to 4.4.0-59 (from -proposed) then it finds root,
# and you can log in as root on console with 'root'.