[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL v3 11/27] multi-process: setup PCI host bridge for remote devi
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PULL v3 11/27] multi-process: setup PCI host bridge for remote device |
Date: |
Sat, 6 Feb 2021 18:57:30 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 |
On 2/5/21 5:44 PM, Stefan Hajnoczi wrote:
> From: Jagannathan Raman <jag.raman@oracle.com>
>
> PCI host bridge is setup for the remote device process. It is
> implemented using remote-pcihost object. It is an extension of the PCI
> host bridge setup by QEMU.
> Remote-pcihost configures a PCI bus which could be used by the remote
> PCI device to latch on to.
>
> Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
> Signed-off-by: John G Johnson <john.g.johnson@oracle.com>
> Signed-off-by: Elena Ufimtseva <elena.ufimtseva@oracle.com>
> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
> Message-id:
> 0871ba857abb2eafacde07e7fe66a3f12415bfb2.1611938319.git.jag.raman@oracle.com
> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> ---
> MAINTAINERS | 2 +
> include/hw/pci-host/remote.h | 29 ++++++++++++++
> hw/pci-host/remote.c | 75 ++++++++++++++++++++++++++++++++++++
> hw/pci-host/Kconfig | 3 ++
> hw/pci-host/meson.build | 1 +
> hw/remote/Kconfig | 1 +
> 6 files changed, 111 insertions(+)
> create mode 100644 include/hw/pci-host/remote.h
> create mode 100644 hw/pci-host/remote.c
...
> +static const TypeInfo remote_pcihost_info = {
> + .name = TYPE_REMOTE_PCIHOST,
> + .parent = TYPE_PCIE_HOST_BRIDGE,
^^^^^^^^^^^^^^^^^^^^^
> + .instance_size = sizeof(RemotePCIHost),
> + .class_init = remote_pcihost_class_init,
> +};
> +
> +static void remote_pcihost_register(void)
> +{
> + type_register_static(&remote_pcihost_info);
> +}
> +
> +type_init(remote_pcihost_register)
> diff --git a/hw/pci-host/Kconfig b/hw/pci-host/Kconfig
> index eb03f0489d..8b8c763c28 100644
> --- a/hw/pci-host/Kconfig
> +++ b/hw/pci-host/Kconfig
> @@ -65,3 +65,6 @@ config PCI_POWERNV
> select PCI_EXPRESS
> select MSI_NONBROKEN
> select PCIE_PORT
> +
> +config REMOTE_PCIHOST
> + bool
select CONFIG_PCI_EXPRESS ?
(Reported by Peter Maydell on s390x)
Side question, does it make sense to enable this feature by
default on all architectures?
Regards,
Phil.
- [PULL v3 02/27] gitmodules: use GitLab repos instead of qemu.org, (continued)
- [PULL v3 02/27] gitmodules: use GitLab repos instead of qemu.org, Stefan Hajnoczi, 2021/02/05
- [PULL v3 03/27] gitlab-ci: remove redundant GitLab repo URL command, Stefan Hajnoczi, 2021/02/05
- [PULL v3 04/27] docs: update README to use GitLab repo URLs, Stefan Hajnoczi, 2021/02/05
- [PULL v3 05/27] pc-bios: update mirror URLs to GitLab, Stefan Hajnoczi, 2021/02/05
- [PULL v3 06/27] get_maintainer: update repo URL to GitLab, Stefan Hajnoczi, 2021/02/05
- [PULL v3 07/27] multi-process: add the concept description to docs/devel/qemu-multiprocess, Stefan Hajnoczi, 2021/02/05
- [PULL v3 08/27] multi-process: add configure and usage information, Stefan Hajnoczi, 2021/02/05
- [PULL v3 09/27] memory: alloc RAM from file at offset, Stefan Hajnoczi, 2021/02/05
- [PULL v3 10/27] multi-process: Add config option for multi-process QEMU, Stefan Hajnoczi, 2021/02/05
- [PULL v3 11/27] multi-process: setup PCI host bridge for remote device, Stefan Hajnoczi, 2021/02/05
- Re: [PULL v3 11/27] multi-process: setup PCI host bridge for remote device,
Philippe Mathieu-Daudé <=
- [PULL v3 12/27] multi-process: setup a machine object for remote device process, Stefan Hajnoczi, 2021/02/05
- [PULL v3 13/27] io: add qio_channel_writev_full_all helper, Stefan Hajnoczi, 2021/02/05
- [PULL v3 14/27] io: add qio_channel_readv_full_all_eof & qio_channel_readv_full_all helpers, Stefan Hajnoczi, 2021/02/05
- [PULL v3 15/27] multi-process: define MPQemuMsg format and transmission functions, Stefan Hajnoczi, 2021/02/05
- [PULL v3 17/27] multi-process: Associate fd of a PCIDevice with its object, Stefan Hajnoczi, 2021/02/05
- [PULL v3 16/27] multi-process: Initialize message handler in remote device, Stefan Hajnoczi, 2021/02/05
- [PULL v3 18/27] multi-process: setup memory manager for remote device, Stefan Hajnoczi, 2021/02/05
- [PULL v3 19/27] multi-process: introduce proxy object, Stefan Hajnoczi, 2021/02/05
- [PULL v3 20/27] multi-process: add proxy communication functions, Stefan Hajnoczi, 2021/02/05