pc: drop external DSDT loading

Submitted by Anthony Liguori on Aug. 8, 2013, 4:38 p.m.

Details

Message ID 1375979888-4879-1-git-send-email-aliguori@us.ibm.com
State New
Headers show

Commit Message

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(-)

Comments

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 hide | download patch | download mbox

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();