Patchwork pc: drop external DSDT loading

login
register
mail settings
Submitter Anthony Liguori
Date Aug. 8, 2013, 4:38 p.m.
Message ID <1375979888-4879-1-git-send-email-aliguori@us.ibm.com>
Download mbox | patch
Permalink /patch/265767/
State New
Headers show

Comments

Anthony Liguori - Aug. 8, 2013, 4:38 p.m.
This breaks migration and is unneeded with modern SeaBIOS.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
---
 hw/i386/pc_piix.c | 1 -
 hw/i386/pc_q35.c  | 1 -
 2 files changed, 2 deletions(-)
Gerd Hoffmann - Aug. 9, 2013, 6:48 a.m.
On 08/08/13 18:38, Anthony Liguori wrote:
> This breaks migration and is unneeded with modern SeaBIOS.

No.  Dropping for piix is fine.  It will break q35 though.

Given that q35 can't be migrated anyway due to ahci being tagged as
unmigratable keeping it for q35 (until the new acpi table loading is
sorted) shouldn't hurt though.

cheers,
  Gerd
Anthony Liguori - Aug. 9, 2013, 12:38 p.m.
Gerd Hoffmann <kraxel@redhat.com> writes:

> On 08/08/13 18:38, Anthony Liguori wrote:
>> This breaks migration and is unneeded with modern SeaBIOS.
>
> No.  Dropping for piix is fine.  It will break q35 though.

Can you elaborate?  When Michael and I discussed this I was under the
impression that latest SeaBIOS had full support for q35.

Regards,

Anthony Liguori

>
> Given that q35 can't be migrated anyway due to ahci being tagged as
> unmigratable keeping it for q35 (until the new acpi table loading is
> sorted) shouldn't hurt though.
>
> cheers,
>   Gerd
Gerd Hoffmann - Aug. 9, 2013, 1:26 p.m.
On 08/09/13 14:38, Anthony Liguori wrote:
> Gerd Hoffmann <kraxel@redhat.com> writes:
> 
>> On 08/08/13 18:38, Anthony Liguori wrote:
>>> This breaks migration and is unneeded with modern SeaBIOS.
>>
>> No.  Dropping for piix is fine.  It will break q35 though.
> 
> Can you elaborate?  When Michael and I discussed this I was under the
> impression that latest SeaBIOS had full support for q35.

SeaBIOS has the piix acpi tables compiled in, for the snake of backward
compatibility with old qemu versions which don't provide the acpi tables.

With the q35 merge seabios started to provide the apci tables via
fw_cfg, for both q35 and piix, with the long-term goal to drop the
internal tables some day even for piix.

Later on we figured table loading has live migration issues (due to bios
binary being migrated but acpi tables are not, so you can end up with
mismatches).

The idea to deal with that was to simply turn off acpi table loading for
piix4, then wait for mst's acpi table patches which fix this for real
(including migration).  Continue loading the tables on q35, ignoring the
live migration issue as ahci renders q35 unmigratable anyway.

I assumed that happend already, but looks like it slipped though,
otherwise you would not have posted that patch  ...

cheers,
  Gerd
Michael S. Tsirkin - Aug. 9, 2013, 3:50 p.m.
On Fri, Aug 09, 2013 at 07:38:36AM -0500, Anthony Liguori wrote:
> Gerd Hoffmann <kraxel@redhat.com> writes:
> 
> > On 08/08/13 18:38, Anthony Liguori wrote:
> >> This breaks migration and is unneeded with modern SeaBIOS.
> >
> > No.  Dropping for piix is fine.  It will break q35 though.
> 
> Can you elaborate?  When Michael and I discussed this I was under the
> impression that latest SeaBIOS had full support for q35.
> 
> Regards,
> 
> Anthony Liguori

I think I made a mistake. SeaBIOS does have the dsdt for Q35
but it doesn not load it.


> >
> > Given that q35 can't be migrated anyway due to ahci being tagged as
> > unmigratable keeping it for q35 (until the new acpi table loading is
> > sorted) shouldn't hurt though.
> >
> > cheers,
> >   Gerd
Michael S. Tsirkin - Aug. 9, 2013, 3:51 p.m.
On Fri, Aug 09, 2013 at 03:26:22PM +0200, Gerd Hoffmann wrote:
> On 08/09/13 14:38, Anthony Liguori wrote:
> > Gerd Hoffmann <kraxel@redhat.com> writes:
> > 
> >> On 08/08/13 18:38, Anthony Liguori wrote:
> >>> This breaks migration and is unneeded with modern SeaBIOS.
> >>
> >> No.  Dropping for piix is fine.  It will break q35 though.
> > 
> > Can you elaborate?  When Michael and I discussed this I was under the
> > impression that latest SeaBIOS had full support for q35.
> 
> SeaBIOS has the piix acpi tables compiled in, for the snake of backward
> compatibility with old qemu versions which don't provide the acpi tables.
> 
> With the q35 merge seabios started to provide the apci tables via
> fw_cfg, for both q35 and piix, with the long-term goal to drop the
> internal tables some day even for piix.
> 
> Later on we figured table loading has live migration issues (due to bios
> binary being migrated but acpi tables are not, so you can end up with
> mismatches).
> 
> The idea to deal with that was to simply turn off acpi table loading for
> piix4, then wait for mst's acpi table patches which fix this for real
> (including migration).  Continue loading the tables on q35, ignoring the
> live migration issue as ahci renders q35 unmigratable anyway.

Sounds like a plan for 1.6.

> I assumed that happend already, but looks like it slipped though,
> otherwise you would not have posted that patch  ...
> 
> cheers,
>   Gerd

Patch

diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index ab25458..daaff8a 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -103,7 +103,6 @@  static void pc_init1(MemoryRegion *system_memory,
                               OBJECT(icc_bridge), NULL);
 
     pc_cpus_init(cpu_model, icc_bridge);
-    pc_acpi_init("acpi-dsdt.aml");
 
     if (kvm_enabled() && kvmclock_enabled) {
         kvmclock_create();
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 2f35d12..8c6c7bc 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -86,7 +86,6 @@  static void pc_q35_init(QEMUMachineInitArgs *args)
                               OBJECT(icc_bridge), NULL);
 
     pc_cpus_init(cpu_model, icc_bridge);
-    pc_acpi_init("q35-acpi-dsdt.aml");
 
     kvmclock_create();