From: Laszlo Ersek <lersek@redhat.com>
To: Kevin O'Connor <kevin@koconnor.net>
Cc: Anthony Liguori <aliguori@us.ibm.com>,
seabios@seabios.org,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
qemu-stable@nongnu.org, Gerd Hoffmann <kraxel@redhat.com>,
Dietmar Maurer <dietmar@proxmox.com>,
Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: [Qemu-devel] problems with freeBSD
Date: Thu, 07 Mar 2013 02:28:41 +0100 [thread overview]
Message-ID: <5137ED49.3030204@redhat.com> (raw)
In-Reply-To: <20130307005351.GA19296@morn.localdomain>
On 03/07/13 01:53, Kevin O'Connor wrote:
> On Thu, Mar 07, 2013 at 12:12:08AM +0100, Aurelien Jarno wrote:
>> On Wed, Mar 06, 2013 at 08:21:11AM +0000, Dietmar Maurer wrote:
>>> Using qemu 1.4.0:
>>>
>>> # qemu -hda test.raw -m 512 -cdrom pfSense-LiveCD-2.0.2-RELEASE-amd64-20121207-2239.iso
>>>
>>> Results in:
>>>
>>> trap 12: page fault while in kernel mode
>>> ...
>>> stopped at x86bios_emu_rdw+0x2f: movzwl (%rbx),%eax
>>>
>>> Any ideas? Can somebody reproduce that?
>>>
>>> To get the FreeBSD VM boot use the console, enter the boot loader, then:
>>> # set hint.atkbd.0.disabled="1"
>>> # boot
>>>
>>> But that disables the keyboard.
Apparently the call may come from get_typematic()
[sys/dev/atkbdc/atkbd.c]; it wants to retrieve the typematic rate of the
keyboard using the BIOS.
>>
>> I was actually digging about that problem. It is indeed present in
>> version 1.4.0, but is fixed in the current git master. The problem is
>> actually not directly in QEMU but in seabios, the update to version
>> 1.7.2.1 commit 5c75fb10) fixes the issue. Maybe it is worth
>> cherry-picking it into stable-1.4 (hence the Cc:). In the meantime
>> using bios.bin from master with QEMU version 1.4.0 should also fix the
>> issue.
>>
>> What is strange is the seabios commit fixing the issue:
>>
>> commit 4219149ad2b783abfa61e80e9e9f6910db0c76c9
>> Author: Kevin O'Connor <kevin@koconnor.net>
>> Date: Sun Feb 17 10:56:10 2013 -0500
>>
>> build: Don't require $(OUT) to be a sub-directory of the main directory.
>
> That change is definitely just build related - I don't see how it
> could impact the final SeaBIOS binary. How did you conclude that this
> commit is what fixes the issue?
Going out on a limb, I suspect qemu commit 5f876756 instead.
(It's a bit risky for me to say that, as Aurelien may have taken
qemu-1.4.0 as fixed point and bisected seabios rel-1.7.2..rel-1.7.2.1
against it:
$ git log --oneline --reverse rel-1.7.2..rel-1.7.2.1
f396871 Update tools/acpi_extract.py to handle iasl 20130117 release.
12e8199 USB-EHCI: Fix null pointer assignment
d75c22f Fix Makefile - don't reference "out/" directly, instead use "$(OUT)".
4219149 build: Don't require $(OUT) to be a sub-directory of the main directory.
e5fe4f9 Verify CC is valid during build tests.
2b57726 seabios q35: Enable all PIRQn IRQs at startup
985a9d3 seabios q35: Add new PCI slot to irq routing function
88cb66e seabios: Add a dummy PCI slot to irq mapping function
)
I'm suspecting said qemu commit because:
- it's the final commit in 1.4 for file "pc-bios/bios.bin",
- somewhat out of the ordinary, apparently, it was Anthony to rebuild
the bios, and he used gcc-4.7.2 on Fedora 18,
- while normally Gerd does the updates (see both before and after
5f876756), and I know for a fact Gerd uses RHEL-6.
I think the gcc version Anthony was using miscompiled SeaBIOS (in the
sense that FreeBSD chokes on it), and the 1.7.2.1 binary from Gerd
restores peace *only* because Gerd relied on RHEL-6 gcc, and not because
of the SeaBIOS changes from 1.7.2 to 1.7.2.1.
$ git log --reverse -- pc-bios/bios.bin
Probably works, but never appeared in a separate release:
commit 3588185b8396eb97fd9efd41c2b97775465f67c4
Author: Gerd Hoffmann <kraxel@redhat.com>
Date: Mon Jan 21 09:17:16 2013 +0100
seabios: update to 1.7.2 release
Not that many changes as we have a pretty recent git snapshot in
master already:
Hannes Reinecke (1):
megasas: Invert PCI device selection
Kevin O'Connor (2):
Minor: Separate UUID display from F12 boot prompt.
boot: Support "halt" in the boot order to prevent default
boot attempts.
Laszlo Ersek (1):
display_uuid(): fix incomplete check after the loop
Paolo Bonzini (1):
vgabios: implement AX=1120H..1124H functions
Exposes problem (released in qemu-1.4.0):
commit 5f876756c57c15f5e14d4136fc432b74f05f082b
Author: Anthony Liguori <aliguori@us.ibm.com>
Date: Wed Feb 6 05:12:06 2013 -0600
bios: recompile BIOS
SeaBIOS is really close to spilling over to 256k. Until we can
better handle migration across RAM block size changes, recompile
SeaBIOS with a compiler that causes the binary to still fit in
128k.
This was built with:
gcc version 4.7.2 20121109 (Red Hat 4.7.2-8) (GCC)
On 64-bit Fedora 18.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Works again (unreleased), according to Aurelien's testing:
commit 5c75fb10029c5fd1e705a6ef5d698fbea06c7a33
Author: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu Feb 28 09:18:56 2013 +0100
update seabios to 1.7.2.1
Alex Williamson (3):
seabios q35: Enable all PIRQn IRQs at startup
seabios q35: Add new PCI slot to irq routing function
seabios: Add a dummy PCI slot to irq mapping function
Avik Sil (1):
USB-EHCI: Fix null pointer assignment
Kevin O'Connor (4):
Update tools/acpi_extract.py to handle iasl 20130117
release.
Fix Makefile - don't reference "out/" directly, instead
use "$(OUT)".
build: Don't require $(OUT) to be a sub-directory of the
main directory.
Verify CC is valid during build tests.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(I re-wrapped the commit messages for legibility.)
Laszlo
next prev parent reply other threads:[~2013-03-07 1:27 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-06 8:21 [Qemu-devel] problems with freeBSD Dietmar Maurer
2013-03-06 12:41 ` Alexandre DERUMIER
2013-03-06 14:38 ` Dietmar Maurer
2013-03-06 15:56 ` Laszlo Ersek
2013-03-06 23:12 ` Aurelien Jarno
2013-03-07 0:53 ` Kevin O'Connor
2013-03-07 1:28 ` Laszlo Ersek [this message]
2013-03-07 1:58 ` [Qemu-devel] [SeaBIOS] " Peter Stuge
2013-03-07 6:12 ` [Qemu-devel] [Qemu-stable] " Doug Goldstein
2013-03-07 6:32 ` Peter Maydell
2013-03-07 7:17 ` Michael Tokarev
2013-03-07 11:56 ` Gerd Hoffmann
2013-03-07 13:06 ` Michael Tokarev
2013-03-07 15:03 ` Peter Maydell
2013-03-07 15:56 ` Gerd Hoffmann
2013-03-07 16:03 ` Peter Maydell
2013-03-07 16:21 ` Aurelien Jarno
2013-03-07 18:57 ` [Qemu-devel] [SeaBIOS] [Qemu-stable] " Peter Stuge
2013-03-08 7:50 ` [Qemu-devel] " Paolo Bonzini
2013-03-08 13:52 ` [Qemu-devel] [Qemu-stable] [SeaBIOS] " Kevin O'Connor
2013-03-08 14:57 ` [Qemu-devel] [SeaBIOS] [Qemu-stable] " Peter Stuge
2013-03-07 20:24 ` David Woodhouse
2013-03-08 7:47 ` Paolo Bonzini
2013-03-08 7:54 ` David Woodhouse
2013-03-08 8:20 ` Gerd Hoffmann
2013-03-08 8:33 ` Paolo Bonzini
2013-03-08 9:58 ` Gerd Hoffmann
2013-03-07 16:33 ` [Qemu-devel] [Qemu-stable] [SeaBIOS] " Dietmar Maurer
2013-03-07 11:17 ` [Qemu-devel] " Gerd Hoffmann
2013-03-07 8:43 ` Aurelien Jarno
2013-03-07 12:16 ` Laszlo Ersek
2013-03-07 13:48 ` Aurelien Jarno
2013-03-07 13:02 ` Don Slutz
2013-03-07 14:00 ` Don Slutz
2013-03-07 16:05 ` Paolo Bonzini
2013-03-07 13:57 ` Kevin O'Connor
2013-03-07 14:09 ` [Qemu-devel] [SeaBIOS] " Don Slutz
2013-03-07 16:15 ` [Qemu-devel] " Aurelien Jarno
2013-03-08 3:35 ` Kevin O'Connor
2013-03-08 11:30 ` [Qemu-devel] [SeaBIOS] " Laszlo Ersek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5137ED49.3030204@redhat.com \
--to=lersek@redhat.com \
--cc=aliguori@us.ibm.com \
--cc=aurelien@aurel32.net \
--cc=dietmar@proxmox.com \
--cc=kevin@koconnor.net \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@nongnu.org \
--cc=seabios@seabios.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.