Message ID | 1407854417-32071-1-git-send-email-armbru@redhat.com |
---|---|
State | New |
Headers | show |
On Tue, Aug 12, 2014 at 04:40:17PM +0200, Markus Armbruster wrote: > pc_fw_cfg_guest_info() never does anything, because has_pci_info is > always false. > > Introduced in commit f8c457b "pc: pass PCI hole ranges to Guests", > disabled in commit 9604f70 "pc: disable pci-info for 1.6", and hasn't > been enabled since. Obviously a dead end. Get of it. > > Signed-off-by: Markus Armbruster <armbru@redhat.com> Applied, thanks. > --- > hw/i386/pc.c | 30 ------------------------------ > hw/i386/pc_piix.c | 4 ---- > hw/i386/pc_q35.c | 3 --- > include/hw/i386/pc.h | 1 - > 4 files changed, 38 deletions(-) > > diff --git a/hw/i386/pc.c b/hw/i386/pc.c > index 9e58982..8fa8d2f 100644 > --- a/hw/i386/pc.c > +++ b/hw/i386/pc.c > @@ -1066,35 +1066,6 @@ typedef struct PcRomPciInfo { > uint64_t w64_max; > } PcRomPciInfo; > > -static void pc_fw_cfg_guest_info(PcGuestInfo *guest_info) > -{ > - PcRomPciInfo *info; > - Object *pci_info; > - bool ambiguous = false; > - > - if (!guest_info->has_pci_info || !guest_info->fw_cfg) { > - return; > - } > - pci_info = object_resolve_path_type("", TYPE_PCI_HOST_BRIDGE, &ambiguous); > - g_assert(!ambiguous); > - if (!pci_info) { > - return; > - } > - > - info = g_malloc(sizeof *info); > - info->w32_min = cpu_to_le64(object_property_get_int(pci_info, > - PCI_HOST_PROP_PCI_HOLE_START, NULL)); > - info->w32_max = cpu_to_le64(object_property_get_int(pci_info, > - PCI_HOST_PROP_PCI_HOLE_END, NULL)); > - info->w64_min = cpu_to_le64(object_property_get_int(pci_info, > - PCI_HOST_PROP_PCI_HOLE64_START, NULL)); > - info->w64_max = cpu_to_le64(object_property_get_int(pci_info, > - PCI_HOST_PROP_PCI_HOLE64_END, NULL)); > - /* Pass PCI hole info to guest via a side channel. > - * Required so guest PCI enumeration does the right thing. */ > - fw_cfg_add_file(guest_info->fw_cfg, "etc/pci-info", info, sizeof *info); > -} > - > typedef struct PcGuestInfoState { > PcGuestInfo info; > Notifier machine_done; > @@ -1106,7 +1077,6 @@ void pc_guest_info_machine_done(Notifier *notifier, void *data) > PcGuestInfoState *guest_info_state = container_of(notifier, > PcGuestInfoState, > machine_done); > - pc_fw_cfg_guest_info(&guest_info_state->info); > acpi_setup(&guest_info_state->info); > } > > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c > index 4f22be8..12d8c26 100644 > --- a/hw/i386/pc_piix.c > +++ b/hw/i386/pc_piix.c > @@ -59,7 +59,6 @@ static const int ide_iobase[MAX_IDE_BUS] = { 0x1f0, 0x170 }; > static const int ide_iobase2[MAX_IDE_BUS] = { 0x3f6, 0x376 }; > static const int ide_irq[MAX_IDE_BUS] = { 14, 15 }; > > -static bool has_pci_info; > static bool has_acpi_build = true; > static int legacy_acpi_table_size; > static bool smbios_defaults = true; > @@ -166,7 +165,6 @@ static void pc_init1(MachineState *machine, > guest_info->has_acpi_build = has_acpi_build; > guest_info->legacy_acpi_table_size = legacy_acpi_table_size; > > - guest_info->has_pci_info = has_pci_info; > guest_info->isapc_ram_fw = !pci_enabled; > guest_info->has_reserved_memory = has_reserved_memory; > > @@ -340,7 +338,6 @@ static void pc_compat_1_7(MachineState *machine) > static void pc_compat_1_6(MachineState *machine) > { > pc_compat_1_7(machine); > - has_pci_info = false; > rom_file_has_mr = false; > has_acpi_build = false; > } > @@ -422,7 +419,6 @@ static void pc_init_pci_no_kvmclock(MachineState *machine) > > static void pc_init_isa(MachineState *machine) > { > - has_pci_info = false; > has_acpi_build = false; > smbios_defaults = false; > gigabyte_align = false; > diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c > index c39ee98..3f8a465 100644 > --- a/hw/i386/pc_q35.c > +++ b/hw/i386/pc_q35.c > @@ -49,7 +49,6 @@ > /* ICH9 AHCI has 6 ports */ > #define MAX_SATA_PORTS 6 > > -static bool has_pci_info; > static bool has_acpi_build = true; > static bool smbios_defaults = true; > static bool smbios_legacy_mode; > @@ -150,7 +149,6 @@ static void pc_q35_init(MachineState *machine) > } > > guest_info = pc_guest_info_init(below_4g_mem_size, above_4g_mem_size); > - guest_info->has_pci_info = has_pci_info; > guest_info->isapc_ram_fw = false; > guest_info->has_acpi_build = has_acpi_build; > guest_info->has_reserved_memory = has_reserved_memory; > @@ -296,7 +294,6 @@ static void pc_compat_1_7(MachineState *machine) > static void pc_compat_1_6(MachineState *machine) > { > pc_compat_1_7(machine); > - has_pci_info = false; > rom_file_has_mr = false; > has_acpi_build = false; > } > diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h > index 863eefb..7eb742d 100644 > --- a/include/hw/i386/pc.h > +++ b/include/hw/i386/pc.h > @@ -85,7 +85,6 @@ typedef struct PcPciInfo { > #define ACPI_PM_PROP_GPE0_BLK_LEN "gpe0_blk_len" > > struct PcGuestInfo { > - bool has_pci_info; > bool isapc_ram_fw; > hwaddr ram_size, ram_size_below_4g; > unsigned apic_id_limit; > -- > 1.9.3
diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 9e58982..8fa8d2f 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -1066,35 +1066,6 @@ typedef struct PcRomPciInfo { uint64_t w64_max; } PcRomPciInfo; -static void pc_fw_cfg_guest_info(PcGuestInfo *guest_info) -{ - PcRomPciInfo *info; - Object *pci_info; - bool ambiguous = false; - - if (!guest_info->has_pci_info || !guest_info->fw_cfg) { - return; - } - pci_info = object_resolve_path_type("", TYPE_PCI_HOST_BRIDGE, &ambiguous); - g_assert(!ambiguous); - if (!pci_info) { - return; - } - - info = g_malloc(sizeof *info); - info->w32_min = cpu_to_le64(object_property_get_int(pci_info, - PCI_HOST_PROP_PCI_HOLE_START, NULL)); - info->w32_max = cpu_to_le64(object_property_get_int(pci_info, - PCI_HOST_PROP_PCI_HOLE_END, NULL)); - info->w64_min = cpu_to_le64(object_property_get_int(pci_info, - PCI_HOST_PROP_PCI_HOLE64_START, NULL)); - info->w64_max = cpu_to_le64(object_property_get_int(pci_info, - PCI_HOST_PROP_PCI_HOLE64_END, NULL)); - /* Pass PCI hole info to guest via a side channel. - * Required so guest PCI enumeration does the right thing. */ - fw_cfg_add_file(guest_info->fw_cfg, "etc/pci-info", info, sizeof *info); -} - typedef struct PcGuestInfoState { PcGuestInfo info; Notifier machine_done; @@ -1106,7 +1077,6 @@ void pc_guest_info_machine_done(Notifier *notifier, void *data) PcGuestInfoState *guest_info_state = container_of(notifier, PcGuestInfoState, machine_done); - pc_fw_cfg_guest_info(&guest_info_state->info); acpi_setup(&guest_info_state->info); } diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index 4f22be8..12d8c26 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -59,7 +59,6 @@ static const int ide_iobase[MAX_IDE_BUS] = { 0x1f0, 0x170 }; static const int ide_iobase2[MAX_IDE_BUS] = { 0x3f6, 0x376 }; static const int ide_irq[MAX_IDE_BUS] = { 14, 15 }; -static bool has_pci_info; static bool has_acpi_build = true; static int legacy_acpi_table_size; static bool smbios_defaults = true; @@ -166,7 +165,6 @@ static void pc_init1(MachineState *machine, guest_info->has_acpi_build = has_acpi_build; guest_info->legacy_acpi_table_size = legacy_acpi_table_size; - guest_info->has_pci_info = has_pci_info; guest_info->isapc_ram_fw = !pci_enabled; guest_info->has_reserved_memory = has_reserved_memory; @@ -340,7 +338,6 @@ static void pc_compat_1_7(MachineState *machine) static void pc_compat_1_6(MachineState *machine) { pc_compat_1_7(machine); - has_pci_info = false; rom_file_has_mr = false; has_acpi_build = false; } @@ -422,7 +419,6 @@ static void pc_init_pci_no_kvmclock(MachineState *machine) static void pc_init_isa(MachineState *machine) { - has_pci_info = false; has_acpi_build = false; smbios_defaults = false; gigabyte_align = false; diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index c39ee98..3f8a465 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -49,7 +49,6 @@ /* ICH9 AHCI has 6 ports */ #define MAX_SATA_PORTS 6 -static bool has_pci_info; static bool has_acpi_build = true; static bool smbios_defaults = true; static bool smbios_legacy_mode; @@ -150,7 +149,6 @@ static void pc_q35_init(MachineState *machine) } guest_info = pc_guest_info_init(below_4g_mem_size, above_4g_mem_size); - guest_info->has_pci_info = has_pci_info; guest_info->isapc_ram_fw = false; guest_info->has_acpi_build = has_acpi_build; guest_info->has_reserved_memory = has_reserved_memory; @@ -296,7 +294,6 @@ static void pc_compat_1_7(MachineState *machine) static void pc_compat_1_6(MachineState *machine) { pc_compat_1_7(machine); - has_pci_info = false; rom_file_has_mr = false; has_acpi_build = false; } diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 863eefb..7eb742d 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -85,7 +85,6 @@ typedef struct PcPciInfo { #define ACPI_PM_PROP_GPE0_BLK_LEN "gpe0_blk_len" struct PcGuestInfo { - bool has_pci_info; bool isapc_ram_fw; hwaddr ram_size, ram_size_below_4g; unsigned apic_id_limit;
pc_fw_cfg_guest_info() never does anything, because has_pci_info is always false. Introduced in commit f8c457b "pc: pass PCI hole ranges to Guests", disabled in commit 9604f70 "pc: disable pci-info for 1.6", and hasn't been enabled since. Obviously a dead end. Get of it. Signed-off-by: Markus Armbruster <armbru@redhat.com> --- hw/i386/pc.c | 30 ------------------------------ hw/i386/pc_piix.c | 4 ---- hw/i386/pc_q35.c | 3 --- include/hw/i386/pc.h | 1 - 4 files changed, 38 deletions(-)