Xen PV Guest won't boot latest kernel- OSError: [Errno 28] No space left on device

Bug #1742789 reported by Michael
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
High
Unassigned

Bug Description

# lsb_release -rd
Description: Ubuntu 16.04.3 LTS
Release: 16.04

This problem is related to the latest kernel for meltdown spectre patches for xen pv guest and pygrub.

This is the kernel that was attempting to be upgraded.
linux-image-4.4.0-109-generic 4.4.0-109.132

I tried to report this issue with the following command but it failed:

````
ubuntu-bug linux

*** Collecting problem information

The collected information can be sent to the developers to improve the

application. This might take a few minutes.

...............

*** Problem in linux-image-4.4.0-15-generic

The problem cannot be reported:

This is not an official Ubuntu package. Please remove any third party package and try again.

Press any key to continue...

No pending crash reports. Try --help for more information.

````

I have an Ubuntu 14.04 running Xen and a VM running Ubuntu 16.04 LTS that I'm having issues with it booting after upgrading the kernel for meltdown and spectre vulnerability.

````
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
````

Ubuntu 14.04 xen host reboot failure log:
````
$ tailf /var/log/xen/servername.log
Domain 24 needs to be cleaned up: destroying the domain
Done. Rebooting now
libxl: error: libxl_bootloader.c:628:bootloader_finished: bootloader failed - consult logfile /var/log/xen/bootloader.27.log
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: bootloader [-1] exited with error status 1
libxl: error: libxl_create.c:1024:domcreate_rebuild_done: cannot (re-)build domain: -3
````

````
cat /var/log/xen/bootloader.27.log
Using <class 'grub.GrubConf.Grub2ConfigFile'> to parse /grub/grub.cfg pyGRUB version 0.6
 ┌────────────────────────────────────────────────────────────────────────┐
 │ Ubuntu │
 │ Ubuntu, with Linux 4.4.0-109-generic │
 │ Ubuntu, with Linux 4.4.0-109-generic (recovery mode) │
 │ Ubuntu, with Linux 4.4.0-108-generic │
 │ Ubuntu, with Linux 4.4.0-108-generic (recovery mode) │
 │ Ubuntu, with Linux 4.4.0-104-generic │
 │ Ubuntu, with Linux 4.4.0-104-generic (recovery mode) │
 │ Ubuntu, with Linux 4.4.0-15-generic │
 └────────────────────────────────────────────────────────────────────────┘
Use the ^ and ┴ keys to select which entry is highlighted.
Press enter to boot the selected OS, 'e' to edit the
commands before booting, 'a' to modify the kernel arguments
before booting, or 'c' for a command line.

Traceback (most recent call last):
  File "/usr/lib/xen-4.4/bin/pygrub", line 905, in <module>
    os.write(fd, ostring)
OSError: [Errno 28] No space left on device
````

I was able to get the vm to boot only by rapidly attempt to access the menu options and boot the old kernel (4.4.0-15-generic). Disk space and inodes seems fine on the host Ubuntu 14.04LTS and Ubuntu 16.04LTS Guest.

Ubuntu 14.04 Host:
````
root@host:/var/log/xen# df -hFilesystem Size Used Avail Use% Mounted on
udev 197M 12K 197M 1% /dev
tmpfs 42M 1.1M 41M 3% /run
/dev/dm-0 104G 49G 50G 50% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
none 5.0M 0 5.0M 0% /run/lock
none 208M 0 208M 0% /run/shm
none 100M 0 100M 0% /run/user
/dev/sda1 236M 40M 184M 18% /boot
root@host:/var/log/xen# df -hi
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 50K 721 49K 2% /dev
tmpfs 52K 849 52K 2% /run
/dev/dm-0 6.6M 86K 6.5M 2% /
none 52K 2 52K 1% /sys/fs/cgroup
none 52K 5 52K 1% /run/lock
none 52K 1 52K 1% /run/shm
none 52K 2 52K 1% /run/user
/dev/sda1 61K 298 61K 1% /boot
root@host:/var/log/xen#
````

Ubuntu 16.04 PV Guest:
````
root@guest:~# df -hFilesystem Size Used Avail Use% Mounted on
udev 950M 0 950M 0% /dev
tmpfs 200M 3.1M 197M 2% /run
/dev/mapper/guest--vg-root 47G 4.3G 40G 10% /
tmpfs 997M 0 997M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 997M 0 997M 0% /sys/fs/cgroup
/dev/xvda1 472M 192M 256M 43% /boot
tmpfs 200M 0 200M 0% /run/user/1000
root@www2:~# df -hi
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 238K 406 237K 1% /dev
tmpfs 250K 491 249K 1% /run
/dev/mapper/guest--vg-root 3.0M 177K 2.8M 6% /
tmpfs 250K 1 250K 1% /dev/shm
tmpfs 250K 7 250K 1% /run/lock
tmpfs 250K 16 250K 1% /sys/fs/cgroup
/dev/xvda1 122K 315 122K 1% /boot
tmpfs 250K 4 250K 1% /run/user/1000
root@guest:~#
````

Here is the guest Ubuntu 16.04 OS kernels:
````
root@guest:~# dpkg -l | grep linux-image-
ii linux-image-4.4.0-104-generic 4.4.0-104.127 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-108-generic 4.4.0-108.131 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-109-generic 4.4.0-109.132 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-15-generic 4.4.0-15.31 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-104-generic 4.4.0-104.127 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-108-generic 4.4.0-108.131 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-109-generic 4.4.0-109.132 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-15-generic 4.4.0-15.31 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-generic 4.4.0.109.114 amd64 Generic Linux kernel image
root@guest:~#
````

I'm currently able to boot to 4.4.0-15.31

Here is my xen config file that I use to start the vm:
````
# cat /etc/xen/guest.cfg
# /var/lib/xen/images/ubuntu-netboot/xenial16LTS

name = "guest"

#kernel = "/var/lib/xen/images/ubuntu-netboot/xenial16LTS/vmlinuz"
#ramdisk = "/var/lib/xen/images/ubuntu-netboot/xenial16LTS/initrd.gz"
bootloader = "/usr/lib/xen-4.4/bin/pygrub"

memory = 2048
vcpus = 1

disk = [ '/dev/host-disk2-vg/guest-disk,raw,xvda,rw' ]

#
# Networking
#
vif = [ 'ip=xxx.xxx.xxx.xxx ,mac=AA:BB:CC:DD:EE:FF' ]

#
# Behaviour
#
on_poweroff = 'destroy'
on_reboot = 'restart'
on_crash = 'restart'
````

I also tried launching the vm with strace output of
````
strace xl create -c file.cfg
````
is here: https://pastebin.com/8ctS3TQh

I'm a bit lost as to the cause of this... I was hoping to just upgrade the kernel for meltdown and spectre, but this issue I've never faced before. I think it might be related to pygrub and the new kernel? I don't know for sure though anything I can check to figure this out better? Thanks.
---
AlsaDevices:
 total 0
 crw-rw---- 1 root audio 116, 1 Jan 11 10:24 seq
 crw-rw---- 1 root audio 116, 33 Jan 11 10:24 timer
AplayDevices: Error: [Errno 2] No such file or directory
ApportVersion: 2.20.1-0ubuntu2.15
Architecture: amd64
ArecordDevices: Error: [Errno 2] No such file or directory
AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
DistroRelease: Ubuntu 16.04
HibernationDevice: RESUME=/dev/mapper/www2--vg-swap_1
IwConfig: Error: [Errno 2] No such file or directory
Lspci:

Lsusb: Error: command ['lsusb'] failed with exit code 1:
Package: linux (not installed)
PciMultimedia:

ProcEnviron:
 LD_LIBRARY_PATH=<set>
 TERM=xterm-256color
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB:

ProcKernelCmdLine: root=/dev/mapper/hostname--vg-root ro quiet splash $vt_handoff
ProcVersionSignature: Ubuntu 4.4.0-15.31-generic 4.4.6
RelatedPackageVersions:
 linux-restricted-modules-4.4.0-15-generic N/A
 linux-backports-modules-4.4.0-15-generic N/A
 linux-firmware 1.157.14
RfKill: Error: [Errno 2] No such file or directory
Tags: xenial xenial
Uname: Linux 4.4.0-15-generic x86_64
UnreportableReason: The report belongs to a package that is not installed.
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups:

_MarkForUpload: False

Revision history for this message
Michael (shotoflove) wrote :
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1742789

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: xenial
Revision history for this message
Michael (shotoflove) wrote : CRDA.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Michael (shotoflove) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Michael (shotoflove) wrote : JournalErrors.txt

apport information

Revision history for this message
Michael (shotoflove) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Michael (shotoflove) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Michael (shotoflove) wrote : ProcModules.txt

apport information

Revision history for this message
Michael (shotoflove) wrote : UdevDb.txt

apport information

Revision history for this message
Michael (shotoflove) wrote : WifiSyslog.txt

apport information

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Can you see if the 4.4.0-104 kernel boots? It can be downloaded from:

https://launchpad.net/~canonical-kernel-team/+archive/ubuntu/ppa/+build/13841470

tags: added: kernel-key pti
Changed in linux (Ubuntu):
importance: Undecided → High
Revision history for this message
Michael (shotoflove) wrote : Re: [Bug 1742789] Re: Xen PV Guest won't boot latest kernel- OSError: [Errno 28] No space left on device
Download full text (12.0 KiB)

Sure, 4.4.0-104 kernel gave the same message as 4.4.0-109-generic and
didn't boot as well.

````
    pyGRUB version 0.6
 lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
 x Ubuntu x
 x Ubuntu, with Linux 4.4.0-109-generic x
 x Ubuntu, with Linux 4.4.0-109-generic (recovery mode) x
 x Ubuntu, with Linux 4.4.0-108-generic x
 x Ubuntu, with Linux 4.4.0-108-generic (recovery mode) x
 x Ubuntu, with Linux 4.4.0-104-generic x
 x Ubuntu, with Linux 4.4.0-104-generic (recovery mode) x
 x Ubuntu, with Linux 4.4.0-15-generic x
 mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj
     Use the ^ and v keys to select which entry is highlighted.
     Press enter to boot the selected OS, 'e' to edit the
     commands before booting, 'a' to modify the kernel arguments
     before booting, or 'c' for a command line.

Traceback (most recent call last):
                                    File "/usr/lib/xen-4.4/bin/pygrub",
line 905, in <module>
        os.write(fd, ostring)
                             OSError: [Errno 28] No space left on device

libxl: error: libxl_bootloader.c:628:bootloader_finished: bootloader failed
- consult logfile /var/log/xen/bootloader.37.log
                  libxl: error:
libxl_exec.c:118:libxl_report_child_exitstatus: bootloader [-1] exited with
error status 1
                                 libxl: error:
libxl_create.c:1024:domcreate_rebuild_done: cannot (re-)build domain: -3
````

Michael Barkdoll

On Thu, Jan 11, 2018 at 8:53 PM, Joseph Salisbury <
<email address hidden>> wrote:

> Can you see if the 4.4.0-104 kernel boots? It can be downloaded from:
>
> https://launchpad.net/~canonical-kernel-
> team/+archive/ubuntu/ppa/+build/13841470
>
>
> ** Tags added: kernel-key pti
>
> ** Changed in: linux (Ubuntu)
> Importance: Undecided => High
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1742789
>
> Title:
> Xen PV Guest won't boot latest kernel- OSError: [Errno 28] No space
> left on device
>
> Status in linux package in Ubuntu:
> Confirmed
>
> Bug description:
> # lsb_release -rd
> Description: Ubuntu 16.04.3 LTS
> Release: 16.04
>
>
> This problem is related to the latest kernel for meltdown spectre
> patches for xen pv guest and pygrub.
>
> This is the kernel that was attempting to be upgraded.
> linux-image-4.4.0-109-generic 4.4.0-109.132
>
>
> I tried to report this issue with the following command but it failed:
>
> ````
> ubuntu-bug linux
>
>
>
> *** Collecting problem information
>
>
>
> The collected information can be sent to the developers to improve the
>
> application. This might take a few minutes.
>
> ...............
>
>
>
> *** Problem in linux-image-4.4.0-15-generic
>
>
>
> The problem cannot be reported:
>
>
>
> This is not an official Ubuntu package. Please remove any ...

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Thanks for testing. That suggests this bug is not due to the PTI security patches.

Can you next test the latest mainline kernel to see if this bug is already fixed upstream. It can be downloaded from:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15-rc7

tags: removed: pti
tags: added: needs-bisect
Revision history for this message
Michael (shotoflove) wrote :
Download full text (10.8 KiB)

Thanks for your help on this issue. 4.15-rc7 also fails to boot.

````
[Errno 28] No space left on device
Error writing temporary copy of ramdisk

libxl: error: libxl_bootloader.c:628:bootloader_finished: bootloader failed
- consult logfile /var/log/xen/bootloader.48.log
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: bootloader
[-1] exited with error status 1
libxl: error: libxl_create.c:1024:domcreate_rebuild_done: cannot (re-)build
domain: -3
````

On Fri, Jan 12, 2018 at 9:43 AM, Joseph Salisbury <
<email address hidden>> wrote:

> Thanks for testing. That suggests this bug is not due to the PTI
> security patches.
>
> Can you next test the latest mainline kernel to see if this bug is
> already fixed upstream. It can be downloaded from:
>
> http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15-rc7
>
> ** Tags removed: pti
>
> ** Tags added: needs-bisect
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1742789
>
> Title:
> Xen PV Guest won't boot latest kernel- OSError: [Errno 28] No space
> left on device
>
> Status in linux package in Ubuntu:
> Confirmed
>
> Bug description:
> # lsb_release -rd
> Description: Ubuntu 16.04.3 LTS
> Release: 16.04
>
>
> This problem is related to the latest kernel for meltdown spectre
> patches for xen pv guest and pygrub.
>
> This is the kernel that was attempting to be upgraded.
> linux-image-4.4.0-109-generic 4.4.0-109.132
>
>
> I tried to report this issue with the following command but it failed:
>
> ````
> ubuntu-bug linux
>
>
>
> *** Collecting problem information
>
>
>
> The collected information can be sent to the developers to improve the
>
> application. This might take a few minutes.
>
> ...............
>
>
>
> *** Problem in linux-image-4.4.0-15-generic
>
>
>
> The problem cannot be reported:
>
>
>
> This is not an official Ubuntu package. Please remove any third party
> package and try again.
>
>
>
> Press any key to continue...
>
>
>
> No pending crash reports. Try --help for more information.
>
> ````
>
>
> I have an Ubuntu 14.04 running Xen and a VM running Ubuntu 16.04 LTS
> that I'm having issues with it booting after upgrading the kernel for
> meltdown and spectre vulnerability.
>
> ````
> sudo apt-get update
> sudo apt-get upgrade
> sudo apt-get dist-upgrade
> ````
>
> Ubuntu 14.04 xen host reboot failure log:
> ````
> $ tailf /var/log/xen/servername.log
> Domain 24 needs to be cleaned up: destroying the domain
> Done. Rebooting now
> libxl: error: libxl_bootloader.c:628:bootloader_finished: bootloader
> failed - consult logfile /var/log/xen/bootloader.27.log
> libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus:
> bootloader [-1] exited with error status 1
> libxl: error: libxl_create.c:1024:domcreate_rebuild_done: cannot
> (re-)build domain: -3
> ````
>
>
> ````
> cat /var/log/xen/bootloader.27.log
> Using <class 'grub.GrubConf.Grub2ConfigFile'> to parse /grub/grub.cfg
> pyGRUB version 0.6
> ┌───────────────────────────────────────────────────────────
> ─────────────┐
> │...

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Is you select 4.4.0-15 from GRUB menu it boots, correct?

We should be able to perform a kernel bisect to narrow down the commit that introduced this regression. We first need to identify the last good kernel version and the first bad one.

Can you test the following upstream kernels:

4.4.6: http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.6-wily/
4.4.15: http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.15/
4.4.50: http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.50/

tags: added: performing-bisect
removed: kernel-key needs-bisect
Revision history for this message
Michael (shotoflove) wrote :

Yes, when I select 4.4.0-15 from the GRUB menu it boots.

I tested the requested upstream kernels:
4.4.6: http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.6-wily/
4.4.15: http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.15/
4.4.50: http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.50/

All of these upstream kernels worked.

Revision history for this message
Michael (shotoflove) wrote :

Alright, I'm thinking something else is the issue, since after manually installing 4.4.117 it also boots?

4.4.117 http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.117/

Revision history for this message
Michael (shotoflove) wrote :

Alright, I think I'm starting to narrow down the issue. I was able to use apt-get and install kernels up to linux-image-4.4.0-112-generic. I'm even able to install the latest, if I uninstall package 'linux-generic' and manually install linux-image-4.4.0-116-generic, e.g.,

sudo apt-get purge linux-generic
sudo apt-get install linux-image-4.4.0-116-generic

But, as soon as I install 'linux-generic' the no-boot issue returns with xen.

sudo apt-get install linux-generic

I'm not certain what to check at this point?

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Is it possible that you are really running out of disk space?

Revision history for this message
vt (vt00) wrote :

I have the same issue and I have tried latest kernels, but this is not fixed. I would appreciate if you could help me on this issue.

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

@vt, can you see if this issue occurs with the upstream 4.20-rc2 kernel? It is available from:
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20-rc2

Some mainline documentation:
 https://wiki.ubuntu.com/KernelMainlineBuilds

Revision history for this message
vt (vt00) wrote :

Hi ! I have tried kernel version 5 and 4.20. The same error. Latest kernel I can use is 4.4.0.137.

  pyGRUB version 0.6
 ┌────────────────────────────────────────────────────────────────────────┐
 │ Ubuntu │
 │ Ubuntu, with Linux 4.20.17-042017-generic │
 │ Ubuntu, with Linux 4.20.17-042017-generic (upstart) │
 │ Ubuntu, with Linux 4.20.17-042017-generic (recovery mode) │
 │ Ubuntu, with Linux 4.4.0-137-generic │
 │ Ubuntu, with Linux 4.4.0-137-generic (upstart) │
 │ Ubuntu, with Linux 4.4.0-137-generic (recovery mode) │
 │ │
 └────────────────────────────────────────────────────────────────────────┘
     Use the ^ and ┴ keys to select which entry is highlighted.
     Press enter to boot the selected OS, 'e' to edit the
     commands before booting, 'a' to modify the kernel arguments
     before booting, or 'c' for a command line.

[Errno 28] No space left on device
                                  Error writing temporary copy of ramdisk
                                                                         libxl: error: libxl_bootloader.c:649:bootloader_finished: Domain 72:bootloader failed - consult logfile /var/log/xen/bootloader.72.log
                                        libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: bootloader [24704] exited with error status 1
                                                                                                                                                   libxl: error: libxl_create.c:1266:domcreate_rebuild_done: Domain 72:cannot (re-)build domain: -3
                                                                            libxl: error: libxl_domain.c:1034:libxl__destroy_domid: Domain 72:Non-existant domain
libxl: error: libxl_domain.c:993:domain_destroy_callback: Domain 72:Unable to destroy guest
libxl: error: libxl_domain.c:920:domain_destroy_cb: Domain 72:Destruction of domain failed

Revision history for this message
vt (vt00) wrote :

The issue is solved. At least I found solution. Seems message "[Errno 28] No space left on device" was
absolutely correct. The problem was only to find correct device.
1) Usually RAM of domain0 for the XEN has very small size. It was 512M in my case.
2) Ram-disk and especially /run file-system has size as % from the domain0 RAM, in my case it was just near 50K and it is not enough to unpack new kernel images.

Solution: extent /run filesystem.
1) nano /etc/fstab add line:
tmpfs /run tmpfs defaults,size=128M
Save changes and:
2) mount -o remount /run
3) Check new size with: df -h
4) Run pygrub guest with new kernel.

Brad Figg (brad-figg)
tags: added: cscc
Revision history for this message
Christian Kujau (christiank) wrote :

FWIW, this just happened again while trying out the latest mainline kernel from https://kernel.ubuntu.com/~kernel-ppa/mainline

* Kernels up to v5.3-rc5 work fine, but booting it takes up ~36MB of /run (unpacking during boot)
  on the Dom0 here.
* Kernel v5.3-rc6 seems to take up even more, filling up the 40MB /run filesystem completely and
  booting fails.

But vt100 is correct of course, extending the /run filesystem solves this issue.

Revision history for this message
Merlin Hansen (heymerlin) wrote :

FWIW, I ran into this issue on when booting the latest available kernel (after an update) on a Debian VM running on a Debian host. Only booting the latest kernel triggered the issue.

The key was the "Device out of space" message that lead me to this bug/message.

As vt100 found, and christiank confirmed, the amount of space allocated to /run was the issue. Extending /run solved the issue.

For those running into this issue and Googling, I saw two different errors on two different VMs (taken from the consoles after a failed boot):

VM 1 gave the following errors on boot (Note the lack of a 'out of space' message):

libxl: error: libxl_device.c:1086:device_backend_callback: unable to add device with path /local/domain/0/backend/vbd/16/51714
libxl: error: libxl_device.c:1086:device_backend_callback: unable to add device with path /local/domain/0/backend/vbd/16/51715
libxl: error: libxl_create.c:1255:domcreate_launch_dm: unable to add disk devices
libxl: error: libxl.c:1575:libxl__destroy_domid: non-existant domain 16
libxl: error: libxl.c:1534:domain_destroy_callback: unable to destroy guest with domid 16
libxl: error: libxl.c:1463:domain_destroy_cb: destruction of domain 16 failed

Whereas VM 2 gave the following errors, which ultimately lead to this thread:

Traceback (most recent call last):
File "/usr/lib/xen-4.8/bin/pygrub", line 917, in <module> os.write(fd, ostring)
OSError: [Errno 28] No space left on device

Maybe the above will help some other poor soul who has been beating their head against this problem.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.