From: "Michael S. Tsirkin" <mst@redhat.com>
To: Bug 1248854 <1248854@bugs.launchpad.net>
Cc: qemu-devel@nongnu.org, chao zhou <chao.zhou@intel.com>
Subject: Re: [Qemu-devel] [Bug 1248854] Re: The guest cannot boot up with parameter "-no-acpi"
Date: Thu, 7 Nov 2013 14:10:35 +0200 [thread overview]
Message-ID: <20131107121035.GA31746@redhat.com> (raw)
In-Reply-To: <20131107081428.24131.25940.malone@gac.canonical.com>
On Thu, Nov 07, 2013 at 08:14:28AM -0000, chao zhou wrote:
> the first bad commit is:
> commit 72c194f7e75cb64b2558111cb111adb49fbf4097
> Author: Michael S. Tsirkin <mst@redhat.com>
> Date: Wed Jul 24 18:56:14 2013 +0300
>
> i386: ACPI table generation code from seabios
>
> This adds C code for generating ACPI tables at runtime,
> imported from seabios git tree
> commit 51684b7ced75fb76776e8ee84833fcfb6ecf12dd
>
> Although ACPI tables come from a system BIOS on real hw,
> it makes sense that the ACPI tables are coupled with the
> virtual machine, since they have to abstract the x86 machine to
> the OS's.
>
> This is widely desired as a way to avoid the churn
> and proliferation of QEMU-specific interfaces
> associated with ACPI tables in bios code.
>
> Notes:
> As BIOS can reprogram devices prior to loading
> ACPI tables, we pre-format ACPI tables but defer loading
> hardware configuration there until tables are loaded.
>
> The code structure was intentionally kept as close
> to the seabios original as possible, to simplify
> comparison and making sure we didn't lose anything
> in translation.
>
> Minor code duplication results, to help ensure there are no functional
> regressions, I think it's better to merge it like this and do more code
> changes in follow-up patches.
>
>
> Cross-version compatibility concerns have been addressed:
> ACPI tables are exposed to guest as FW_CFG entries.
> When running with -M 1.5 and older, this patch disables ACPI
> table generation, and doesn't expose ACPI
> tables to guest.
>
> As table content is likely to change over time,
> the following measures are taken to simplify
> cross-version migration:
> - All tables besides the RSDP are packed in a single FW CFG entry.
> This entry size is currently 23K. We round it up to 64K
> to avoid too much churn there.
> - Tables are placed in special ROM blob (not mapped into guest memory)
> which is automatically migrated together with the guest, same
> as BIOS code.
> - Offsets where hardware configuration is loaded in ACPI tables
> are also migrated, this is in case future ACPI changes make us
> rearrange the tables in memory.
>
> This patch reuses some code from SeaBIOS, which was originally under
> LGPLv2 and then relicensed to GPLv3 or LGPLv3, in QEMU under GPLv2+. This
> relicensing has been acked by all contributors that had contributed to the
> code since the v2->v3 relicense. ACKs approving the v2+ relicensing are
> listed below. The list might include ACKs from people not holding
> copyright on any parts of the reused code, but it's better to err on the
> side of caution and include them.
Thanks a lot for the report and the bisect!
I'll send a patch fixing this shortly.
> --
> You received this bug notification because you are a member of qemu-
> devel-ml, which is subscribed to QEMU.
> https://bugs.launchpad.net/bugs/1248854
>
> Title:
> The guest cannot boot up with parameter "-no-acpi"
>
> Status in QEMU:
> New
>
> Bug description:
> Environment:
> ------------
> Host OS (ia32/ia32e/IA64):ia32e
> Guest OS (ia32/ia32e/IA64):ia32e
> Guest OS Type (Linux/Windows):Linux
> kvm.git Commit:81e87e26796782e014fd1f2bb9cd8fb6ce4021a8
> qemu.git Commit:a126050a103c924b03388a9a64ce9af8c96b0969
> Host Kernel Version:3.12.0-rc5
> Hardware:Romley_EP ,Ivytowm_EP
>
>
> Bug detailed description:
> --------------------------
> when create guest with parameter "-no-acpi", the guest cannot boot up.
>
> note: this should be a qemu bug
> kvm + qemu = result
> 81e87e26 + a126050a = bad
> 81e87e26 + b8616055 = good
>
> Reproduce steps:
> ----------------
> 1. create guest
> qemu-system-x86_64 -enable-kvm -m 1024 -smp 2 -net none -no-acpi rhel6u4.qcow
>
> Current result:
> ----------------
> guest cannot boot up
>
> Expected result:
> ----------------
> guest boot up fine.
>
> Basic root-causing log:
> ----------------------
> [root@vt-snb9 qemu]#qemu-system-x86_64 -enable-kvm -m 1024 -smp 2 -net none /root/rhel6u4.qcow -no-acpi
> VNC server running on `::1:5900'
> qemu-system-x86_64: /root/qemu/hw/i386/acpi-build.c:135: acpi_get_pm_info: Assertion `obj' failed.
> Aborted (core dumped)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1248854/+subscriptions
next prev parent reply other threads:[~2013-11-07 12:07 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-07 8:13 [Qemu-devel] [Bug 1248854] [NEW] The guest cannot boot up with parameter "-no-acpi" chao zhou
2013-11-07 8:14 ` [Qemu-devel] [Bug 1248854] " chao zhou
2013-11-07 12:10 ` Michael S. Tsirkin [this message]
2013-11-22 7:04 ` chao zhou
2013-11-22 7:24 ` chao zhou
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=20131107121035.GA31746@redhat.com \
--to=mst@redhat.com \
--cc=1248854@bugs.launchpad.net \
--cc=chao.zhou@intel.com \
--cc=qemu-devel@nongnu.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).