Red Hat Bugzilla – Bug 574616
Solaris 10 8/07 & 10/09 (AKA update 4 / update 8) x86 guest can't boot 64 bit
Last modified: 2013-01-09 17:22:03 EST
Description of problem:
Solaris 10 x86 guests cannot boot into 64 bit mode, the vm continuosly reboots,
the workaround is to specify kernel/unix (this boot the machine in 32 bit mode), using kvm as hypervisor
Host: Dell poweredge 2x Dual core Xeon
kvm version: kvm-83-105.el5.x86_64
host kernel: 2.6.18-164.el5.x86_64
the upstream related bug is detailed here:
Looking in the
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1.install a solaris 10 x86 guest (virtual machine) using kvm as hypervisor with x86_64 arch on a rhel 5.4 host (x86_64)
2. boot it
The solaris guest (virtual machine) turn in to endless reboot (64 bit kernel by default), to boot the vm, should edit bootloader configuration and adding kernel/unix, with this way, the machine boots correctly
The machine should boot normally, without any modification on boot loader using
the 64 bits default solaris kernel
No any useful info in dmesg, or /var/log/messages or /var/log/libvirt/*
Reading the kernel changelog version 22.214.171.124, this vanilla kernel version includes a fix for the bug
Author: Amit Shah
Date: Fri Apr 17 19:40:13 2009 -0300
KVM: is_long_mode() should check for EFER.LMA
upstream commit: 41d6af119206e98764b4ae6d264d63acefcf851e
is_long_mode currently checks the LongModeEnable bit in
EFER instead of the LongModeActive bit. This is wrong, but
we survived this till now since it wasn't triggered. This
breaks guests that go from long mode to compatibility mode.
This is noticed on a solaris guest and fixes bug #1842160
Signed-off-by: Amit Shah
Signed-off-by: Avi Kivity
Signed-off-by: Chris Wright
Also tested with Solaris 10 5/09, with the same behaviour, same results
Hi, we`ve just checked the patches applied into redhat`s kvm package and the fore mentioned patch is already in there.
so this is caused for something else.
We`ve tested with 5.5beta packages
and it also fails.
testing with an Ubuntu Karmic machine which closely follows kernel 2.6.31
the kvm related commits into Ubuntu are only the ones available in upstream.
oops, i must complete the sentence..
testing with an Ubuntu Karmic machine the Solaris Guest works with 64 bits.
We're trying to collect some logs, enabling debug in libvirt but we don`t find anything that catchs our attention.
however i`m attaching them to this report.
Created attachment 401367 [details]
libvirt debug log
Created attachment 401382 [details]
kvm references at ubuntu`s changelog
Tested with jwilson`s packages at http://people.redhat.com/jwilson/el5/194.el5/ without success.
A working scenario is on
qemu-kvm : 0.11.0-0ubuntu6
host:sony vaio laptop x86_64 bits, with VT enabled on bios
the solaris vm boots correctly at 64 bits.
On rhel 5.4 we've have built and boot, with a 126.96.36.199 (rpm) kernel from www.kernel.org, and the problem persists.
We've managed to solve this issue as follows:
1.- compiling from upstream sources qemu-kvm 0.12.3
2.- applying to 5.4 RHEL libvirt RPM package the patch :
Avoid broken networking with new QEMU/KVM >= 86
With this procedure we've managed to get Solaris 64 bits working flawlessly on top of KVM.
Currently there are no plans to support Solaris over rhel5, closing.