[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH 07/20] pci: remove pci_sub_bus() by open coding.
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] Re: [PATCH 07/20] pci: remove pci_sub_bus() by open coding. |
Date: |
Thu, 12 Nov 2009 12:45:08 +0200 |
User-agent: |
Mutt/1.5.19 (2009-01-05) |
On Thu, Nov 12, 2009 at 02:58:35PM +0900, Isaku Yamahata wrote:
> Because pci_sub_bus() is used only once so eliminate it
> by open coding as suggested by "Michael S. Tsirkin" <address@hidden>.
>
> Signed-off-by: Isaku Yamahata <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
As a separate note. I wonder whether we can handle host bridge in a way
that is more uniform with pci bridges, so we don't have to special-case
it in e.g. pci_bus_num.
Not sure yet how to do this or whether this is a good idea at all.
> ---
> hw/pci.c | 12 ++++--------
> 1 files changed, 4 insertions(+), 8 deletions(-)
>
> diff --git a/hw/pci.c b/hw/pci.c
> index 4169d4f..bdd4063 100644
> --- a/hw/pci.c
> +++ b/hw/pci.c
> @@ -239,13 +239,6 @@ int pci_bus_num(PCIBus *s)
> return s->parent_dev->config[PCI_SECONDARY_BUS];
> }
>
> -static uint8_t pci_sub_bus(PCIBus *s)
> -{
> - if (!s->parent_dev)
> - return 255; /* pci host bridge */
> - return s->parent_dev->config[PCI_SUBORDINATE_BUS];
> -}
> -
> static int get_pci_config_device(QEMUFile *f, void *pv, size_t size)
> {
> PCIDevice *s = container_of(pv, PCIDevice, config);
> @@ -1179,7 +1172,10 @@ PCIBus *pci_find_bus(PCIBus *bus, int bus_num)
>
> /* try child bus */
> QLIST_FOREACH(sec, &bus->child, sibling) {
> - if (pci_bus_num(sec) <= bus_num && bus_num <= pci_sub_bus(sec)) {
> +
> + if (!bus->parent_dev /* pci host bridge */
> + || (pci_bus_num(sec) <= bus_num &&
> + bus->parent_dev->config[PCI_SUBORDINATE_BUS])) {
> return pci_find_bus(sec, bus_num);
> }
> }
> --
> 1.6.0.2
- [Qemu-devel] [PATCH 03/20] pci: simplify pci_data_read(), pcie_mmcfg_data_read()., (continued)
[Qemu-devel] [PATCH 05/20] pci: rename pci_addr_to_dev(), pcie_mmcfg_addr_to_dev()., Isaku Yamahata, 2009/11/12
[Qemu-devel] [PATCH 11/20] pci: clean up of pci_init_wmask()., Isaku Yamahata, 2009/11/12
[Qemu-devel] [PATCH 07/20] pci: remove pci_sub_bus() by open coding., Isaku Yamahata, 2009/11/12
- [Qemu-devel] Re: [PATCH 07/20] pci: remove pci_sub_bus() by open coding.,
Michael S. Tsirkin <=
[Qemu-devel] [PATCH 18/20] pci: fix pci_config_get_io_base()., Isaku Yamahata, 2009/11/12
[Qemu-devel] [PATCH 16/20] pci: kill goto in pci_update_mappings(), Isaku Yamahata, 2009/11/12
[Qemu-devel] [PATCH 14/20] pci: remove unused constants., Isaku Yamahata, 2009/11/12