Xen 4.14 RC test instructions

From Xen
Icon Info.png If you come to this page before or after the Test Day is completed, your testing is still valuable, and you can use the information on this page to test, post any bugs and test reports to xen-devel@. If this page is more than two weeks old when you arrive here, please check the current schedule and see if a similar but more recent Test Day is planned or has already happened.


What needs to be tested

General things:

  • Making sure that Xen 4.14 compiles and installs properly on different software configurations; particularly on distros
  • Making sure that Xen 4.14, along with appropriately up-to-date kernels, work on different hardware.

For more ideas about what to test, please see Testing Xen.

ARM Smoke Testing

If you use ARM Hardware, which is not widely available or not rackable (and thus not part of our automated test suite), please check out Xen ARM Manual Smoke Test. Helping out to manually test ARM boards (which will only take a few minutes) will guarantee that Xen 4.14 will work on the board that you use. If you want to see which boards need testing, check Xen ARM Manual Smoke Test/Results.

New features

From CHANGELOG.md

- Use x2APIC mode whenever available, regardless of interrupt remapping
  support.
- Performance improvements to guest assisted TLB flushes, either when using
  the Xen hypercall interface or the viridian one.
- Assorted pvshim performance and scalability improvements plus some bug
  fixes.
- Hypervisor framework to ease porting Xen to run on hypervisors.
- Initial support to run on Hyper-V.
- Initial hypervisor file system (hypfs) support.
- libxl support for running qemu-xen device model in a linux stubdomain.
- New 'domid_policy', allowing domain-ids to be randomly chosen.
- Option to preserve domain-id across migrate or save+restore.
- Support in kdd for initial KD protocol handshake for Win 7, 8 and 10 (64 bit).

Installing

Getting a RC

For the expressions/examples below, set the following bash/sh/... variable to the release candidate number (e.g. one of rc1, rc2, ... )

RC="<release candidate number>" # rc1, rc2 ...

Important notes:

For RC1: RC=rc1 (see #RC1)

From xen.git

With a recent enough git (>= 1.7.8.2), just pull from the proper tag (4.14.0-$RC) from the main repo directly:

git clone -b 4.14.0-$RC git://xenbits.xen.org/xen.git

With an older git version (and/or if that does not work, e.g., complaining with a message like this: Remote branch 4.14.0-$RC not found in upstream origin, using HEAD instead), do the following:

git clone git://xenbits.xen.org/xen.git ; cd xen ; git checkout 4.14.0-$RC

From tarball

Download:

 https://downloads.xenproject.org/release/xen/4.14.0-$RC/xen-4.14.0-$RC.tar.gz 
 https://downloads.xenproject.org/release/xen/4.14.0-$RC/xen-4.14.0-$RC.tar.gz.sig

Building

Instructions are available for building Xen on Linux, NetBSD, and FreeBSD

Known issues

  • RC1 & RC2: build failure version of golang older than 1.11: add --disable-golang to configure line to work around (fixed in RC3).

Test instructions

General

  • Remove any old versions of Xen toolstack and userspace binaries (including qemu).
  • Remove any Xen-related udev files under /etc because Xen 4.14 doesn't use those anymore.
  • Download and install the most recent Xen 4.14 RC, as described above. Make sure to check the README and INSTALL for changes in required development libraries and procedures. Some particular things to note:

Once you have Xen 4.14 RC installed check that you can install a guest etc and use it in the ways which you normally would, i.e. that your existing guest configurations, scripts etc still work.

For more ideas about what to test, please see Testing Xen or the sections below.

Specific ARM test Instructions

Specific x86 test instructions

RC specific things to test

RC1

None for now.

RC2

xenhypfs: see https://lists.xenproject.org/archives/html/xen-devel/2020-06/msg00681.html

RC3

None for now.

RC4

None for now.

RC5

None for now.

Reporting Bugs (& Issues)

  • Use Freenode IRC channel #xentest to discuss questions interactively
  • Report any bugs / missing functionality / unexpected results.
  • Please put [TestDay] into the subject line
  • Also make sure you specify the RC number you are using
  • Make sure to follow the guidelines on Reporting Bugs against Xen (please CC the relevant maintainers and the Release Manager - jgross at suse dot com).

Reporting success

We would love it if you could report successes by e-mailing xen-devel@lists.xen.org, preferably including:

  • Hardware: Please at least include the processor manufacturer (Intel/AMD). Other helpful information might include specific processor models, amount of memory, number of cores, and so on
  • Software: If you're using a distro, the distro name and version would be the most helpful. Other helpful information might include the kernel that you're running, or other virtualization-related software you're using (e.g., libvirt, xen-tools, drbd, &c).
  • Guest operating systems: If running a Linux version, please specify whether you ran it in PV or HVM mode.
  • Functionality tested: High-level would include toolstacks, and major functionality (e.g., suspend/resume, migration, pass-through, stubdomains, &c)

The following template might be helpful: should you use Xen 4.14.0-<Some RC> for testing, please make sure you state that information!

Subject: [TESTDAY] Test report
 
* Hardware:
 
* Software:

* Guest operating systems:

* Functionality tested:

* Comments:

For example:

Subject: [TESTDAY] Test report
 
* Hardware: 
Dell 390's (Intel, dual-core) x15
HP (AMD, quad-core) x5
 
* Software: 
Ubuntu 10.10,11.10
Fedora 17

* Guest operating systems:
Windows 8
Ubuntu 12.10,11.10 (HVM)
Fedora 17 (PV)

* Functionality tested:
xl
suspend/resume
pygrub

* Comments:
Window 8 booting seemed a little slower than normal.

Other than that, great work!