Xen 4.17 on XCP-ng 8.3!
-
Xen 4.17
XenServer developers updated Xen from 4.13 to 4.17 in XenServer 8 recently. We decided to port this to XCP-ng 8.3 as soon as possible in order to let you take part in the tests really early.
We'll forward any feedback you give us to these developers (and to the Xen Project when useful).
It is a big version jump, that's why testing it on a wide range of hardware is a good idea.
How to install
We put the test packages in the
xcp-ng-lab
repository, which is already setup on XCP-ng 8.3 (albeit disabled).Just run :
yum update --enablerepo=xcp-ng-lab
And reboot. That's it!
Keep us informed of how well it goes, and of any issues you may have that were not present with the 4.13 version.
How to downgrade
In case of issues, if your host is still bootable, you can downgrade with:
yum downgrade blktap forkexecd gpumon kexec-tools message-switch python2-xapi-storage qemu rrdd-plugins sm-cli squeezed varstored varstored-guard varstored-tools vhd-tool vncterm wsproxy xapi-core xapi-nbd xapi-rrd2csv xapi-storage-script xapi-tests xapi-xe xcp-clipboardd xcp-featured xcp-networkd xcp-rrdd xen-dom0-libs xen-dom0-tools xen-hypervisor xen-libs xen-tools xenopsd xenopsd-cli xenopsd-xc
(or use
yum history
to rollback the last transaction)If you can't boot, well, first we'll try to help you overcome this issue, and if nothing works you can still boot the fifth entry in grub, which will boot using an older version of Xen. Then you can downgrade the packages.
After the installation
On a host running with this Xen 4.17 and packages rebuilt for it, don't install updates for the coming days/weeks unless I tell you to (and this will likely be another
yum update --enablerepo=xcp-ng-lab
operation).What to test
Installing on as many different hardware specs you can, then at least a few operations on a VM, and then anything you want to test.
Besides testing manually, you can also:
- Run XTF: https://docs.xcp-ng.org/project/development-process/tests/#test-the-xen-hypervisor-itself
- Run xen-dom0-tests: https://docs.xcp-ng.org/project/development-process/tests/#xen-dom0-tests
In order not to flood this thread with your test results:
- only share the output if there's an error, or when in doubt
- you can quote errors here, but if you think it's useful to share the full output, then please use https://paste.vates.tech.
If you have extra hosts you can temporarily dedicate to this, even if you don't have any VMs to run on them, you can very well take part in the testing effort by installating XCP-ng 8.3 beta2, updating, installing Xen 4.17, and then running these automated tests.
The more diverse hardware we get to test, the better.
What this version of Xen changes
(courtesy of @gb.123)
Notable Features (filtered to x86-related changes only)
- MISRA-C integration: The project has officially adopted four directives and 24 rules, added MISRA-C checker build integration, and defined how to document deviations. A number of MISRA-C violations have been fixed.
- x86: IOMMU superpage support for all guest types; improving performance of PCI pass-through
- x86: Security support hosts with up to 12 TiB of RAM
- x86: Can now set cpuid parameters for dom0 at boot time
- x86: mwait-idle support: Added SPR and ADL
- x86: Improved speculative mitigation support, including VIRT_SSBD and MSR_SPEC_CTRL features to help guests know what speculative mitigations they don't need to be done (due to mitigations on the hypervisor side), and to control what kind of speculative mitigations the hypervisor performs on their behalf
- Out-of-tree builds for the hypervisor now supported
Source : https://wiki.xenproject.org/wiki/Xen_Project_4.17_Feature_List
Also check changelogs for versions 4.14, 4.15 and 4.16.
-
@stormi Great! Thanks.
Will Xen 4.17 become the standard version for 8.3 or is this a beta on top of 8.3 that will be part of the next XCP-ng version? Is Citrix supporting 4.17 as their next release or is this XCP-ng going out on their own?
I see there are several features from newer Xen that XCP-ng has already implemented in 4.13 on 8.3 but defiantly many more improvements with 4.17.
-
@Andrew XCP-ng 8.3 will have Xen 4.17 once it's well tested.
-
@stormi said in Xen 4.17 on XCP-ng 8.3!:
I'm creating this thread dedicated to the update from Xen 4.13 to 4.17. I will update this post with instructions very soon.
I'm definitely looking forward to it and will test here, mainly on frighteningly old hardware.
-
It's ready: I updated the first post with instructions.
-
@stormi Thanks! 4.17 Installed and running on a NUC10. Things seem to be working, but it's just a test... And for everyone who will ask... No, Windows Hyper-V server does not work (as expected).
-
@stormi I have it up and running on an HP Microserver N36L. Both of my test VMs work as they did before the update. One is running Alpine Linux 3.19.1 using UEFI secure boot and the other is a Windows Server 2008 R2 setup using Citrix drivers and agent.
-
Installed on a HP EliteDesg 800 G3 Mini running 6VMs Linux nad FreeBSD all iwith UEFI one Linux with vTPM so far no issues. Will keep monitoring and testing.
-
setting it up on a dell poweredge r720 with 3 vms (2 debian 1 freebsd)
will report if i encounter any issues -
Just updated to the latest on a dell T430, all seems to be working as expected.
-
Testing now on ryzen 1700.
-
Running stable as always for a couple of days so far - homelab with 10-15 vms.
Is there anything in particular we should be testing in order to help test 4.17?
-
@redakula That the system works fine on your hardware with your usual load is a good test already.
Now the most motivated might try to produce before/after benchmarks, but I don't know myself exactly what kind of benchmarks would be appropriate.
-
ive been running it for 3 days so far with no issues, everything seems to be working fine
-
@stormi Intel 9th gen on C242 chipset if you are keeping track of hardware.
Not 100% sure if it is related (but i believe it was working before updating) but stats are unavailable in XOfor both host and VM's. Simply says "No stats."
XO from sources and fully up to date on the latest commit.Can anyone else check if they have stats in XO?
-
@redakula That's a known issue that was due to 2 problems, and both are fixed for the end of the month
-
-
New updates are available in
xcp-ng-lab
for Xen 4.17.Update with:
yum update --enablerepo=xcp-ng-lab
Then reboot.
Here's the changelog, from XenServer's development repository for Xen:
* Tue Feb 13 2024 Andrew Cooper <andrew.cooper3@citrix.com> - 4.17.3-2 - De-virtualise more function pointers, based on boot time configuration - Improve the performance of IOMMU construction for dom0 - Fix a bug with the determination of IVMD memory regions - Fix inefficiencies with XEN_{SYS,DOM}CTL_getdomaininfo{,list} - Fix undefined behaviour in compat_set_timer_op() - Fix the Raw CPU Policy rescan when CPUID Masking is active
-
After the update, besides testing manually, there is another way you can contribute to the testing of Xen 4.17 for XCP-ng.
- Run XTF: https://docs.xcp-ng.org/project/development-process/tests/#test-the-xen-hypervisor-itself
- Run xen-dom0-tests: https://docs.xcp-ng.org/project/development-process/tests/#xen-dom0-tests
In order not to flood this thread with your test results:
- only share the output if there's an error, or when in doubt
- you can quote errors here, but if you think it's useful to share the full output, then please use https://paste.vates.tech.
If you have extra hosts you can temporarily dedicate to this, even if you don't have any VMs to run on them, you can very well take part in the testing effort by installating XCP-ng 8.3 beta2, updating, installing Xen 4.17, and then running these automated tests.
The more diverse hardware we get to test, the better.
-
@stormi I already installed 4.17 before, now doing today's update
yum update --enablerepo=xcp-ng-lab
wants to install from both lab and base, but they conflict because yum picks base. This happens for all of the updated lab packages, not just one in the example:---> Package forkexecd.x86_64 0:23.31.0-1.1.0.xen417.2.xcpng8.3 will be updated ---> Package forkexecd.x86_64 0:23.31.0-1.5.xcpng8.3 will be an update Updating: forkexecd x86_64 23.31.0-1.5.xcpng8.3 xcp-ng-base 1.7 M
https://paste.vates.tech/?f4dea5fc787301a9#6XKfAJyxkRjuLVkrJVznRJpV3x1VQVL5NE2oaRLHKWA7
-
@stormi Never mind....
yum update --enablerepo=xcp-ng-lab
is working now on that system...