* [Qemu-devel] [PATCH] pc: Get rid of pci-info leftovers
@ 2014-08-12 14:40 Markus Armbruster
2014-08-13 9:31 ` Michael S. Tsirkin
0 siblings, 1 reply; 2+ messages in thread
From: Markus Armbruster @ 2014-08-12 14:40 UTC (permalink / raw)
To: qemu-devel; +Cc: aliguori, mst
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(-)
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
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [PATCH] pc: Get rid of pci-info leftovers
2014-08-12 14:40 [Qemu-devel] [PATCH] pc: Get rid of pci-info leftovers Markus Armbruster
@ 2014-08-13 9:31 ` Michael S. Tsirkin
0 siblings, 0 replies; 2+ messages in thread
From: Michael S. Tsirkin @ 2014-08-13 9:31 UTC (permalink / raw)
To: Markus Armbruster; +Cc: qemu-devel, aliguori
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
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-08-13 9:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-12 14:40 [Qemu-devel] [PATCH] pc: Get rid of pci-info leftovers Markus Armbruster
2014-08-13 9:31 ` Michael S. Tsirkin
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).