Unable to boot Xenial cloud image on Bionic ARM64 ThunderX

Bug #1765668 reported by Po-Hsu Lin on 2018-04-20
This bug affects 1 person
Affects Status Importance Assigned to Milestone
uvtool (Ubuntu)

Bug Description

Similar to bug 1744754, I can create an Artful KVM on this ThunderX ARM64 node with Bionic installed. But not with Xenial.

   # uvt-simplestreams-libvirt sync release=xenial arch=arm64
   # uvt-kvm create test release=xenial arch=arm64
   # uvt-kvm wait test --insecure
   uvt-kvm: error: timed out waiting for dnsmasq lease for 52:54:00:72:91:3a.
   # uvt-kvm ip test
   uvt-kvm: error: no IP address found for libvirt machine 'test'.

With Artful, although it will return error due to the "Permission Denied" error, but you can still ssh into that KVM:
    # uvt-simplestreams-libvirt sync release=artful arch=arm64
    # uvt-kvm create a-test release=artful arch=arm64
    # uvt-kvm wait a-test --insecure
ubuntu@ Permission denied (publickey).
Traceback (most recent call last):
  File "/usr/bin/uvt-kvm", line 35, in <module>
  File "/usr/lib/python2.7/dist-packages/uvtool/libvirt/kvm.py", line 861, in main_cli_wrapper
    main(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/uvtool/libvirt/kvm.py", line 856, in main
    args.func(parser, args)
  File "/usr/lib/python2.7/dist-packages/uvtool/libvirt/kvm.py", line 782, in main_wait
    main_wait_remote(parser, args)
  File "/usr/lib/python2.7/dist-packages/uvtool/libvirt/kvm.py", line 745, in main_wait_remote
  File "/usr/lib/python2.7/dist-packages/uvtool/libvirt/kvm.py", line 614, in ssh
    ssh_call, preexec_fn=subprocess_setup, close_fds=True, stdin=stdin
  File "/usr/lib/python2.7/subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '[u'ssh', u'-o', u'UserKnownHostsFile=/tmp/uvt-kvm.known_hoststmpnK_mba', u'-l', u'ubuntu', u'', u'env', u'UVTOOL_WAIT_INTERVAL=8.0', u'UVTOOL_WAIT_TIMEOUT=120.0', u'sh', u'-']' returned non-zero exit status 255
    # uvt-kvm ip a-test
    # ssh ubuntu@ "lsb_release -a"
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description: Ubuntu 17.10
    Release: 17.10
    Codename: artful

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: linux-image-4.15.0-15-generic 4.15.0-15.16
ProcVersionSignature: User Name 4.15.0-15.16-generic 4.15.15
Uname: Linux 4.15.0-15-generic aarch64
 total 0
 crw-rw---- 1 root audio 116, 1 Apr 20 09:15 seq
 crw-rw---- 1 root audio 116, 33 Apr 20 09:15 timer
AplayDevices: Error: [Errno 2] No such file or directory: 'aplay': 'aplay'
ApportVersion: 2.20.9-0ubuntu5
Architecture: arm64
ArecordDevices: Error: [Errno 2] No such file or directory: 'arecord': 'arecord'
AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
Date: Fri Apr 20 10:33:57 2018
IwConfig: Error: [Errno 2] No such file or directory: 'iwconfig': 'iwconfig'
MachineType: Cavium ThunderX CRB

 PATH=(custom, no user)
 1 astdrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.15.0-15-generic root=UUID=d4e5f461-24ef-47d8-a67f-42c82ff1efe8 ro acpi=force iommu.passthrough=1
 linux-restricted-modules-4.15.0-15-generic N/A
 linux-backports-modules-4.15.0-15-generic N/A
 linux-firmware 1.173
RfKill: Error: [Errno 2] No such file or directory: 'rfkill': 'rfkill'
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 12/12/2012
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 5.11
dmi.board.asset.tag: To be filled by O.E.M.
dmi.board.name: To be filled by O.E.M.
dmi.board.vendor: To be filled by O.E.M.
dmi.board.version: To be filled by O.E.M.
dmi.chassis.asset.tag: To be filled by O.E.M.
dmi.chassis.type: 0
dmi.chassis.vendor: Cavium
dmi.chassis.version: To be filled by O.E.M.
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd12/12/2012:svnCavium:pnThunderXCRB:pvrTobefilledbyO.E.M.:rvnTobefilledbyO.E.M.:rnTobefilledbyO.E.M.:rvrTobefilledbyO.E.M.:cvnCavium:ct0:cvrTobefilledbyO.E.M.:
dmi.product.family: Default string
dmi.product.name: ThunderX CRB
dmi.product.version: To be filled by O.E.M.
dmi.sys.vendor: Cavium

Po-Hsu Lin (cypressyew) wrote :
summary: - Unable to boot Xenial cloud image on Bionic
+ Unable to boot Xenial cloud image on Bionic ARM64 ThunderX

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
tags: added: artful
dann frazier (dannf) wrote :

There's no evidence that this is a kernel issue - this works fine when executing qemu directly:

I'm not a regularly user of uvt - but it looks like the guest is booting up and you're able to talk to it over the network, but ssh isn't allowing you in. If so, maybe however uvt is passing in userdata to cloud-init isn't working somehow.

Reassigning to uvt - that's seems like a better place to start.

affects: linux (Ubuntu) → uvtool (Ubuntu)
dann frazier (dannf) wrote :

Apologies for all of the grammar mistakes in the last comment! Shouldn't comment on bugs during meetings...

Robie Basak (racb) wrote :

This sounds like an issue to do with general Ubuntu enablement on this hardware.

uvtool is just a wrapper around libvirt, cloud-init and Ubuntu cloud images. I don't consider a problem booting some specific hardware, architecture or configuration to be a bug in uvtool unless it is shown to actually be a problem in uvtool itself.

Please start by using libvirt and/or cloud-init against the cloud images directly. If this works, please describe what you're doing so we can understand what uvtool does differently. If it doesn't work, then the problem can't be considered to be in uvtool.

Changed in uvtool (Ubuntu):
status: Confirmed → Incomplete
Changed in uvtool (Ubuntu):
importance: Undecided → High
status: Incomplete → Triaged
Robie Basak (racb) wrote :

As I explained in comment 5 this cannot currently be addressed as a bug in uvtool.

Changed in uvtool (Ubuntu Bionic):
status: Triaged → Incomplete
importance: High → Undecided
Po-Hsu Lin (cypressyew) on 2018-05-18
summary: - Unable to boot Xenial cloud image on Bionic ARM64 ThunderX
+ Unable to boot Xenial cloud image on Bionic ARM64 ThunderX / Azure

I implemented this in uvtool for Bionic, which is why it work.
It is clearly a feature - I don't think it is SRUable.

If you think it is, pull the changes out of the repo and ask to push it to xenial and artful, but you'd need to convince rbasak twice that it is SRUable (once for uvtool and once for SRU).
Or just use uvtool from the master ppa [1] and it will work.4

[1]: https://launchpad.net/~uvtool-dev/+archive/ubuntu/master

Po-Hsu Lin (cypressyew) wrote :

It looks like the test has passed with Bionic Azure kernel + Xenial (guest), I will remove the azure project.

no longer affects: linux-azure (Ubuntu)
summary: - Unable to boot Xenial cloud image on Bionic ARM64 ThunderX / Azure
+ Unable to boot Xenial cloud image on Bionic ARM64 ThunderX
Po-Hsu Lin (cypressyew) wrote :

We have changed this test to run the guest of the corresponding release, closing this issue.

no longer affects: linux-azure (Ubuntu Bionic)
Changed in ubuntu-kernel-tests:
status: New → Fix Released
Changed in uvtool (Ubuntu):
status: Incomplete → Invalid
Changed in uvtool (Ubuntu Bionic):
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers