From: Zhao Liu <zhao1.liu@intel.com>
To: Bernhard Beschow <shentey@gmail.com>
Cc: qemu-devel@nongnu.org, "Ani Sinha" <anisinha@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
"Richard Henderson" <richard.henderson@linaro.org>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Paul Durrant" <paul@xen.org>,
"Igor Mammedov" <imammedo@redhat.com>,
"Jason Wang" <jasowang@redhat.com>,
"David Woodhouse" <dwmw2@infradead.org>,
"Sergio Lopez" <slp@redhat.com>
Subject: Re: [PATCH v2 3/6] hw/i386/pc_{piix, q35}: Eliminate local pci_bus/pci_host variables
Date: Mon, 26 Feb 2024 17:00:04 +0800 [thread overview]
Message-ID: <ZdxTFI2uHA/efhCE@intel.com> (raw)
In-Reply-To: <20240224135851.100361-4-shentey@gmail.com>
On Sat, Feb 24, 2024 at 02:58:48PM +0100, Bernhard Beschow wrote:
> Date: Sat, 24 Feb 2024 14:58:48 +0100
> From: Bernhard Beschow <shentey@gmail.com>
> Subject: [PATCH v2 3/6] hw/i386/pc_{piix, q35}: Eliminate local
> pci_bus/pci_host variables
> X-Mailer: git-send-email 2.44.0
>
> There is no advantage in having these local variables which 1/ needlessly have
> different identifiers in both machines and 2/ which are redundant to pcms->bus
> which is almost as short.
>
> Signed-off-by: Bernhard Beschow <shentey@gmail.com>
> Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
> ---
> hw/i386/pc_piix.c | 14 ++++++--------
> hw/i386/pc_q35.c | 16 +++++++---------
> 2 files changed, 13 insertions(+), 17 deletions(-)
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
>
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index 3393b93007..814d24326d 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -108,7 +108,6 @@ static void pc_init1(MachineState *machine,
> MemoryRegion *system_memory = get_system_memory();
> MemoryRegion *system_io = get_system_io();
> Object *phb = NULL;
> - PCIBus *pci_bus = NULL;
> ISABus *isa_bus;
> Object *piix4_pm = NULL;
> qemu_irq smi_irq;
> @@ -212,11 +211,10 @@ static void pc_init1(MachineState *machine,
> &error_fatal);
> sysbus_realize_and_unref(SYS_BUS_DEVICE(phb), &error_fatal);
>
> - pci_bus = PCI_BUS(qdev_get_child_bus(DEVICE(phb), "pci.0"));
> - pci_bus_map_irqs(pci_bus,
> + pcms->pcibus = PCI_BUS(qdev_get_child_bus(DEVICE(phb), "pci.0"));
> + pci_bus_map_irqs(pcms->pcibus,
> xen_enabled() ? xen_pci_slot_get_pirq
> : pc_pci_slot_get_pirq);
> - pcms->pcibus = pci_bus;
>
> hole64_size = object_property_get_uint(phb,
> PCI_HOST_PROP_PCI_HOLE64_SIZE,
> @@ -261,7 +259,7 @@ static void pc_init1(MachineState *machine,
> for (i = 0; i < ISA_NUM_IRQS; i++) {
> qdev_connect_gpio_out_named(dev, "isa-irqs", i, x86ms->gsi[i]);
> }
> - pci_realize_and_unref(pci_dev, pci_bus, &error_fatal);
> + pci_realize_and_unref(pci_dev, pcms->pcibus, &error_fatal);
>
> if (xen_enabled()) {
> pci_device_set_intx_routing_notifier(
> @@ -273,7 +271,7 @@ static void pc_init1(MachineState *machine,
> * connected to the IOAPIC directly.
> * These additional routes can be discovered through ACPI.
> */
> - pci_bus_irqs(pci_bus, xen_intx_set_irq, pci_dev,
> + pci_bus_irqs(pcms->pcibus, xen_intx_set_irq, pci_dev,
> XEN_IOAPIC_NUM_PIRQS);
> }
>
> @@ -310,7 +308,7 @@ static void pc_init1(MachineState *machine,
> x86_register_ferr_irq(x86ms->gsi[13]);
> }
>
> - pc_vga_init(isa_bus, pcmc->pci_enabled ? pci_bus : NULL);
> + pc_vga_init(isa_bus, pcmc->pci_enabled ? pcms->pcibus : NULL);
>
> assert(pcms->vmport != ON_OFF_AUTO__MAX);
> if (pcms->vmport == ON_OFF_AUTO_AUTO) {
> @@ -321,7 +319,7 @@ static void pc_init1(MachineState *machine,
> pc_basic_device_init(pcms, isa_bus, x86ms->gsi, rtc_state, true,
> 0x4);
>
> - pc_nic_init(pcmc, isa_bus, pci_bus);
> + pc_nic_init(pcmc, isa_bus, pcms->pcibus);
>
> #ifdef CONFIG_IDE_ISA
> if (!pcmc->pci_enabled) {
> diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
> index 734d9bedb2..2fa4efb52f 100644
> --- a/hw/i386/pc_q35.c
> +++ b/hw/i386/pc_q35.c
> @@ -122,7 +122,6 @@ static void pc_q35_init(MachineState *machine)
> PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);
> X86MachineState *x86ms = X86_MACHINE(machine);
> Object *phb;
> - PCIBus *host_bus;
> PCIDevice *lpc;
> DeviceState *lpc_dev;
> ISADevice *rtc_state;
> @@ -216,8 +215,7 @@ static void pc_q35_init(MachineState *machine)
> sysbus_realize_and_unref(SYS_BUS_DEVICE(phb), &error_fatal);
>
> /* pci */
> - host_bus = PCI_BUS(qdev_get_child_bus(DEVICE(phb), "pcie.0"));
> - pcms->pcibus = host_bus;
> + pcms->pcibus = PCI_BUS(qdev_get_child_bus(DEVICE(phb), "pcie.0"));
>
> /* irq lines */
> gsi_state = pc_gsi_create(&x86ms->gsi, true);
> @@ -231,7 +229,7 @@ static void pc_q35_init(MachineState *machine)
> for (i = 0; i < IOAPIC_NUM_PINS; i++) {
> qdev_connect_gpio_out_named(lpc_dev, ICH9_GPIO_GSI, i, x86ms->gsi[i]);
> }
> - pci_realize_and_unref(lpc, host_bus, &error_fatal);
> + pci_realize_and_unref(lpc, pcms->pcibus, &error_fatal);
>
> rtc_state = ISA_DEVICE(object_resolve_path_component(OBJECT(lpc), "rtc"));
>
> @@ -283,7 +281,7 @@ static void pc_q35_init(MachineState *machine)
> AHCIPCIState *ich9;
>
> /* ahci and SATA device, for q35 1 ahci controller is built-in */
> - pdev = pci_create_simple_multifunction(host_bus,
> + pdev = pci_create_simple_multifunction(pcms->pcibus,
> PCI_DEVFN(ICH9_SATA1_DEV,
> ICH9_SATA1_FUNC),
> "ich9-ahci");
> @@ -297,14 +295,14 @@ static void pc_q35_init(MachineState *machine)
>
> if (machine_usb(machine)) {
> /* Should we create 6 UHCI according to ich9 spec? */
> - ehci_create_ich9_with_companions(host_bus, 0x1d);
> + ehci_create_ich9_with_companions(pcms->pcibus, 0x1d);
> }
>
> if (pcms->smbus_enabled) {
> PCIDevice *smb;
>
> /* TODO: Populate SPD eeprom data. */
> - smb = pci_create_simple_multifunction(host_bus,
> + smb = pci_create_simple_multifunction(pcms->pcibus,
> PCI_DEVFN(ICH9_SMB_DEV,
> ICH9_SMB_FUNC),
> TYPE_ICH9_SMB_DEVICE);
> @@ -316,8 +314,8 @@ static void pc_q35_init(MachineState *machine)
> pc_cmos_init(pcms, rtc_state);
>
> /* the rest devices to which pci devfn is automatically assigned */
> - pc_vga_init(isa_bus, host_bus);
> - pc_nic_init(pcmc, isa_bus, host_bus);
> + pc_vga_init(isa_bus, pcms->pcibus);
> + pc_nic_init(pcmc, isa_bus, pcms->pcibus);
>
> if (machine->nvdimms_state->is_enabled) {
> nvdimm_init_acpi_state(machine->nvdimms_state, system_io,
> --
> 2.44.0
>
>
next prev parent reply other threads:[~2024-02-26 8:46 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-24 13:58 [PATCH v2 0/6] Simplify initialization of PC machines Bernhard Beschow
2024-02-24 13:58 ` [PATCH v2 1/6] hw/i386/x86: Let ioapic_init_gsi() take parent as pointer Bernhard Beschow
2024-02-26 8:27 ` Philippe Mathieu-Daudé
2024-02-26 8:54 ` Zhao Liu
2024-02-24 13:58 ` [PATCH v2 2/6] hw/i386/pc: Rename "bus" attribute to "pcibus" Bernhard Beschow
2024-02-26 8:26 ` Philippe Mathieu-Daudé
2024-02-26 8:56 ` Zhao Liu
2024-02-24 13:58 ` [PATCH v2 3/6] hw/i386/pc_{piix, q35}: Eliminate local pci_bus/pci_host variables Bernhard Beschow
2024-02-26 9:00 ` Zhao Liu [this message]
2024-02-24 13:58 ` [PATCH v2 4/6] hw/i386/pc: Remove unneeded class attribute "kvmclock_enabled" Bernhard Beschow
2024-02-25 16:32 ` Philippe Mathieu-Daudé
2024-02-26 6:14 ` Thomas Huth
2024-02-26 9:07 ` Zhao Liu
2024-02-24 13:58 ` [PATCH v2 5/6] hw/i386/pc: Populate RTC attribute directly Bernhard Beschow
2024-02-26 9:11 ` Zhao Liu
2024-02-24 13:58 ` [PATCH v2 6/6] hw/i386/pc: Inline pc_cmos_init() into pc_cmos_init_late() and remove it Bernhard Beschow
2024-02-24 14:15 ` [PATCH v2 0/6] Simplify initialization of PC machines Bernhard Beschow
2024-02-26 17:42 ` Philippe Mathieu-Daudé
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=ZdxTFI2uHA/efhCE@intel.com \
--to=zhao1.liu@intel.com \
--cc=anisinha@redhat.com \
--cc=dwmw2@infradead.org \
--cc=eduardo@habkost.net \
--cc=imammedo@redhat.com \
--cc=jasowang@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=paul@xen.org \
--cc=pbonzini@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=shentey@gmail.com \
--cc=slp@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.