From: Paolo Bonzini <pbonzini@redhat.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Gal Hammer <ghammer@redhat.com>,
seabios@seabios.org, qemu-devel@nongnu.org,
marcel a <marcel.a@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] piix: do not reset APIC base address (0x80) on piix4_reset.
Date: Wed, 18 Dec 2013 11:34:14 -0500 (EST) [thread overview]
Message-ID: <178534992.41571400.1387384454834.JavaMail.root@redhat.com> (raw)
In-Reply-To: <20131218163306.GB21916@redhat.com>
----- Messaggio originale -----
> Da: "Michael S. Tsirkin" <mst@redhat.com>
> A: "marcel a" <marcel.a@redhat.com>
> Cc: "Paolo Bonzini" <pbonzini@redhat.com>, "Gal Hammer" <ghammer@redhat.com>, seabios@seabios.org,
> qemu-devel@nongnu.org
> Inviato: Mercoledì, 18 dicembre 2013 17:33:06
> Oggetto: Re: [Qemu-devel] [PATCH] piix: do not reset APIC base address (0x80) on piix4_reset.
>
> On Wed, Dec 18, 2013 at 06:27:12PM +0200, Marcel Apfelbaum wrote:
> > On Wed, 2013-12-18 at 17:22 +0200, Michael S. Tsirkin wrote:
> > > On Wed, Dec 18, 2013 at 03:22:59PM +0100, Paolo Bonzini wrote:
> > > > Il 11/12/2013 10:21, Gal Hammer ha scritto:
> > > > > Fix a bug that was introduced in commit c046e8c4. QEMU fails to
> > > > > resume from suspend mode (S3).
> > > > >
> > > > > Signed-off-by: Gal Hammer <ghammer@redhat.com>
> > > > > ---
> > > > > hw/acpi/piix4.c | 1 -
> > > > > 1 file changed, 1 deletion(-)
> > > > >
> > > > > diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c
> > > > > index 93849c8..5c736a4 100644
> > > > > --- a/hw/acpi/piix4.c
> > > > > +++ b/hw/acpi/piix4.c
> > > > > @@ -376,7 +376,6 @@ static void piix4_reset(void *opaque)
> > > > > pci_conf[0x5b] = 0;
> > > > >
> > > > > pci_conf[0x40] = 0x01; /* PM io base read only bit */
> > > > > - pci_conf[0x80] = 0;
> > > > >
> > > > > if (s->kvm_enabled) {
> > > > > /* Mark SMM as already inited (until KVM supports SMM). */
> > > >
> > > > Note this is not the APIC base address, that one is 80h on the ISA
> > > > bridge (function 0). You're changing the behavior for 80h on the power
> > > > management function, which is function 3. The register is "PMBA—POWER
> > > > MANAGEMENT BASE ADDRESS" and it is indeed initialized by SeaBIOS in
> > > > piix4_pm_setup (src/fw/pciinit.c).
> > > >
> > > > Michael, perhaps a part of pci_setup (same file) should run on S3
> > > > resume?
> > > >
> > > > Paolo
> > >
> > > Seems reasonable: either seabios or guest OS must do it, and
> > > guest does not seem to.
> > I was looking into this today, but it seems that we have a problem.
> > We cannot run pci_setup() in init section:
> > .data.varinit.seabios/src/hw/pci.h.66 is VARVERIFY32INIT but used from
> > ['.text.runtime.seabios/src/resume.c.150', '.text.pci_setup']
> >
> > Any thoughts how to get around this?
> > Thanks,
> > Marcel
>
> We defintely don't want to do full pci enumeration.
> Just pci_bios_init_platform or even less.
Or put an array of (bdf, offset, size, value) tuples somewhere in low memory,
fill it at startup, and reproduce it blindly at S3 resume time. This is similar
to what UEFI does.
Paolo
next prev parent reply other threads:[~2013-12-18 16:34 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-11 9:21 [Qemu-devel] [PATCH] piix: do not reset APIC base address (0x80) on piix4_reset Gal Hammer
2013-12-11 10:23 ` Paolo Bonzini
2013-12-11 10:44 ` Michael S. Tsirkin
2013-12-11 11:04 ` Gal Hammer
2013-12-18 14:19 ` Paolo Bonzini
2013-12-18 15:16 ` Gal Hammer
2013-12-18 21:57 ` Laszlo Ersek
2013-12-18 14:22 ` Paolo Bonzini
2013-12-18 15:22 ` Michael S. Tsirkin
2013-12-18 16:27 ` Marcel Apfelbaum
2013-12-18 16:33 ` Michael S. Tsirkin
2013-12-18 16:34 ` Paolo Bonzini [this message]
2013-12-18 16:55 ` Marcel Apfelbaum
2013-12-18 17:21 ` Michael S. Tsirkin
2013-12-19 16:06 ` Kevin O'Connor
2013-12-19 18:03 ` Marcel Apfelbaum
2013-12-19 18:17 ` Kevin O'Connor
2013-12-18 16:58 ` Michael S. Tsirkin
2013-12-18 22:10 ` Laszlo Ersek
2013-12-18 22:16 ` Laszlo Ersek
2013-12-18 23:43 ` Paolo Bonzini
2013-12-18 16:49 ` Marcel Apfelbaum
2013-12-18 17:20 ` Michael S. Tsirkin
2013-12-19 9:37 ` Marcel Apfelbaum
2013-12-19 9:49 ` Marcel Apfelbaum
2013-12-19 10:35 ` Michael S. Tsirkin
2013-12-18 15:59 ` Gal Hammer
2013-12-18 16:00 ` Paolo Bonzini
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=178534992.41571400.1387384454834.JavaMail.root@redhat.com \
--to=pbonzini@redhat.com \
--cc=ghammer@redhat.com \
--cc=marcel.a@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@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 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).