Kernel 4.15.0-50 or newer wont boot as Xen-DomU with PVH

Bug #1829378 reported by Jan Kellermann on 2019-05-16
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Undecided
Unassigned
Bionic
Undecided
Unassigned

Bug Description

=== SRU Justification ===
[Impact]
NULL pointer dereference in acpi_quirk_matches_bios_ids() renders kernel
unbootable.

[Fix]
It's a regression caused by commit abd273f52766 ("UBUNTU: SAUCE: ACPI /
bus: Add some Lenovo laptops in list of acpi table term list").

When both bios_vendor and bios_ver are NULL then a NULL string is passed
to strncmp() and the issue occurs.

VMs may not provides string bios_vendor or bios_ver, so bail out early
when either bios_vendor or bios_ver is NULL.

[Test]
User reported the test kernel with proposed fix solves the issue.

[Regression Potenial]
Low. It's quite trivial so I don't think it'll regress anything.

=== Original Bug Report ===
After upgrading HWE-16.04-kernel from 4.15.0-48 to 4.15.0-50 the kernel crashes while booting as PVH-Guest with Xen 4.12 (booting as PV works).
Kernel 4.15.0-48 and prior did boot without any problems as PVH.

We have the same problem for Ubuntu 18.04 with Kernel 4.15.0-50. Ubunutu 18.04 with HWE-Kernel 4.18.0-20 boots without problems as PVH-DomU.

See also https://lists.xenproject.org/archives/html/xen-users/2019-05/msg00010.html

description: updated
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in linux-meta-hwe (Ubuntu):
status: New → Confirmed
Stefan Bader (smb) wrote :

It will help to add whatever stack trace was submitted to the xen mailing list, to this bug report.

affects: linux-meta-hwe (Ubuntu) → linux (Ubuntu)
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
David Kowis (dkowis) wrote :

Also does not boot for linux-image-4.15.0-51-generic

From the xl console output trying to boot that kernel. Previous kernels have no problem.

libxl: error: libxl_xshelp.c:201:libxl__xs_read_mandatory: xenstore read failed: `/libxl/45/type': No such file or directory
libxl: warning: libxl_dom.c:52:libxl__domain_type: unable to get domain type for domid=45, assuming HVM
xenconsole: Could not read tty from store: No such file or directory
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: console child [3420] exited with error status 2
root@nosgoth:/etc/xen/conf#

David Kowis (dkowis) wrote :

https://lists.xenproject.org/archives/html/xen-users/2019-05/txtiEUldDuKY9.txt

This is the stacktrace/log that was originally captured by the filer.

Jan Kellermann (jan-kellermann) wrote :

Sonmething new? Do you need further information?

We tried kernel linux-image-4.15.0-54 and were not able to boot as pvh (xen buld from source 4.12-staging from today).

linux-image-4.15.0-48 we are able to boot as pvh.

Some patches between 4.15.0-48 and 4.15.0-50 destroyed the ability to boot as pvh.

ky.

summary: - Kernel 4.15.0-50 wont boot as Xen-DomU with PVH
+ Kernel 4.15.0-50 or newer wont boot as Xen-DomU with PVH
Jan Kellermann (jan-kellermann) wrote :

@kaihengfeng thank you very much!
We can boot Ubuntu 16.04 with this kernel as PVH-xen-guest.

> Booting paravirtualized kernel on Xen PVH

tu ky.

description: updated
Changed in linux (Ubuntu Bionic):
status: New → Fix Committed

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-bionic' to 'verification-done-bionic'. If the problem still exists, change the tag 'verification-needed-bionic' to 'verification-failed-bionic'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-bionic
Jan Kellermann (jan-kellermann) wrote :

Tested the proposed Kernel 4.15.0-56 and could boot as PVH-Guest.
Changed Tag to verification-done-bionic.

tags: added: verification-done-bionic
removed: verification-needed-bionic

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-xenial' to 'verification-done-xenial'. If the problem still exists, change the tag 'verification-needed-xenial' to 'verification-failed-xenial'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-xenial

Tested the proposed Kernel 4.15.0-56 and could boot as PVH-Guest.
Changed Tag to verification-done-xenial.

tags: added: verification-done-xenial
removed: verification-done-bionic verification-needed-xenial
tags: added: verification-done-bionic
Launchpad Janitor (janitor) wrote :
Download full text (171.3 KiB)

This bug was fixed in the package linux - 4.15.0-58.64

---------------
linux (4.15.0-58.64) bionic; urgency=medium

  * unable to handle kernel NULL pointer dereference at 000000000000002c (IP:
    iget5_locked+0x9e/0x1f0) (LP: #1838982)
    - Revert "ovl: set I_CREATING on inode being created"
    - Revert "new primitive: discard_new_inode()"

linux (4.15.0-57.63) bionic; urgency=medium

  * CVE-2019-1125
    - x86/cpufeatures: Carve out CQM features retrieval
    - x86/cpufeatures: Combine word 11 and 12 into a new scattered features word
    - x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations
    - x86/speculation: Enable Spectre v1 swapgs mitigations
    - x86/entry/64: Use JMP instead of JMPQ
    - x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS

  * Packaging resync (LP: #1786013)
    - update dkms package versions

linux (4.15.0-56.62) bionic; urgency=medium

  * bionic/linux: 4.15.0-56.62 -proposed tracker (LP: #1837626)

  * Packaging resync (LP: #1786013)
    - [Packaging] resync git-ubuntu-log
    - [Packaging] update helper scripts

  * CVE-2019-2101
    - media: uvcvideo: Fix 'type' check leading to overflow

  * hibmc-drm Causes Unreadable Display for Huawei amd64 Servers (LP: #1762940)
    - [Config] Set CONFIG_DRM_HISI_HIBMC to arm64 only
    - SAUCE: Make CONFIG_DRM_HISI_HIBMC depend on ARM64

  * Bionic: support for Solarflare X2542 network adapter (sfc driver)
    (LP: #1836635)
    - sfc: make mem_bar a function rather than a constant
    - sfc: support VI strides other than 8k
    - sfc: add Medford2 (SFC9250) PCI Device IDs
    - sfc: improve PTP error reporting
    - sfc: update EF10 register definitions
    - sfc: populate the timer reload field
    - sfc: update MCDI protocol headers
    - sfc: support variable number of MAC stats
    - sfc: expose FEC stats on Medford2
    - sfc: expose CTPIO stats on NICs that support them
    - sfc: basic MCDI mapping of 25/50/100G link speeds
    - sfc: support the ethtool ksettings API properly so that 25/50/100G works
    - sfc: add bits for 25/50/100G supported/advertised speeds
    - sfc: remove tx and MCDI handling from NAPI budget consideration
    - sfc: handle TX timestamps in the normal data path
    - sfc: add function to determine which TX timestamping method to use
    - sfc: use main datapath for HW timestamps if available
    - sfc: only enable TX timestamping if the adapter is licensed for it
    - sfc: MAC TX timestamp handling on the 8000 series
    - sfc: on 8000 series use TX queues for TX timestamps
    - sfc: only advertise TX timestamping if we have the license for it
    - sfc: simplify RX datapath timestamping
    - sfc: support separate PTP and general timestamping
    - sfc: support second + quarter ns time format for receive datapath
    - sfc: support Medford2 frequency adjustment format
    - sfc: add suffix to large constant in ptp
    - sfc: mark some unexported symbols as static
    - sfc: update MCDI protocol headers
    - sfc: support FEC configuration through ethtool
    - sfc: remove ctpio_dmabuf_start from stats
    - sfc: stop the TX queue before pushing new buffers

  * [18.04 FEAT] zKVM: Add hardwar...

Changed in linux (Ubuntu Bionic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers