[SeaBIOS] [Qemu-devel] solaris x86 in qemu? [bisected]

Michael Tokarev mjt at tls.msk.ru
Sun Jun 16 12:07:39 CEST 2013


14.06.2013 03:47, Kevin O'Connor wrote:
> On Fri, Jun 14, 2013 at 12:32:22AM +0400, Michael Tokarev wrote:
>> 13.06.2013 11:51, Michael Tokarev wrote:
>>> Hello.
>>>
>>> In order to verify some build issues on solaris, I tried to install
>>> sol10 x86 in a kvm vm.  But unfortunately it does not work: after the
>>> grub prompt and choosing "Solaris 10 x86" boot entry, the kernel
>>> gets loaded (there's a row of dots displayed during that), next,
>>> the following message gets displayed:
>>>
>>>  SunOS Release 5.10 Version Generic_147148-26 64-bit
>>>  Copyright (c) 1983, 2013 Oracle and/or its affiliates.  All rights reserved.
>>>
>>> and the guest stays there for a long time, spinning up 100% of its CPU,
>>> and nothing more happens.
>>>
>>> The same happens when run with or without kvm (ie, tcg and kvm behaves
>>> the same way).
>>>
>>> When run in kvm, kvm_stats shows just a few exits (about 600/sec) and
>>> nothing more than that.
>>>
>>> I think that supporting solaris as _guest_ OS is an important goal
>>> for qemu/kvm (as opposed to _host_).
>>
>> I tried to bisect this.  It turns out that solaris x86 does not boot in
>> qemu/kvm for quite long time already, namely, starting from this commit:
>>
>>
>>  commit 6b034aa138716a515c88f7894940d5d0aff2f3ed
>>  Author: Gerd Hoffmann <kraxel at redhat.com>
>>  Date:   Tue Apr 17 10:51:41 2012 +0200
>>
>>     seabios: update to 1.7.0
>>
>>     Update roms/seabios and pc-bios/bios.bin to the 1.7.0 release.
>>     Most noticable new feature is virtio-scsi support.
>>
>>     Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
>>
>>
>> So I went on and tried to bisect seabios (previous version in qemu
>> was 1.6.3.2, and it worked).
>>
>> So seabios bisection with qemu-1.1 points to this commit:
>>
>>  commit 9d3d7cb4b163d3fbcba64a01c4fa42eb6bc53128
>>  Author: Kevin O'Connor <kevin at koconnor.net>
>>  Date:   Wed Sep 21 21:19:51 2011 -0400
>>
>>     Move code from PCI hotplug DSDT macros to methods.
>>
>>     Simplify the hotplug code by moving the bulk of the logic out of the
>>     macros and into static method definitions.  This also reduces the ACPI
>>     DSDT code size.
>>
>>     Signed-off-by: Kevin O'Connor <kevin at koconnor.net>
>>
> 
> Can you try with the latest seabios release (v1.7.2.2)?  There have
> been other changes to the dsdt that may have corrected your issue.

So, with the knowlege that current 1.7.2.2 does not change this, can we
guess what's going on there?  I don't really know solaris kernel internals
(is the source available to start with?), but maybe this particular commit
may give some hint?

Thanks!

/mjt



More information about the SeaBIOS mailing list