* Re: [Qemu-devel] [PATCH V2] Revert "hw/pci: disable pci-bridge's shpc by default"
2017-05-11 10:25 [Qemu-devel] [PATCH V2] Revert "hw/pci: disable pci-bridge's shpc by default" Marcel Apfelbaum
@ 2017-05-11 10:27 ` Marcel Apfelbaum
2017-05-11 10:28 ` Paolo Bonzini
2017-05-17 21:36 ` Michael S. Tsirkin
2 siblings, 0 replies; 4+ messages in thread
From: Marcel Apfelbaum @ 2017-05-11 10:27 UTC (permalink / raw)
To: qemu-devel; +Cc: mst, pbonzini, lersek, dgilbert
----- Original Message -----
> From: "Marcel Apfelbaum" <marcel@redhat.com>
> To: qemu-devel@nongnu.org
> Cc: marcel@redhat.com, mst@redhat.com, pbonzini@redhat.com, lersek@redhat.com, dgilbert@redhat.com
> Sent: Thursday, May 11, 2017 1:25:29 PM
> Subject: [Qemu-devel] [PATCH V2] Revert "hw/pci: disable pci-bridge's shpc by default"
>
> This reverts commit dc0ae767700c156894e36fab89a745a2dc4173de.
>
> Disabling the shpc controller has an undesired side effect.
> The PCI bridge remains with no attached devices at boot time,
> and the guest operating systems do not allocate any resources
> for it, leaving the bridge unusable. Note that the behaviour
> is dictated by the pci bridge specification.
>
> Revert the commit and leave the shpc controller even if is not
> actually used by any architecture. Slot 0 remains unusable at boot time.
>
> Keep shpc off for QEMU 2.9 machines.
>
> Signed-off-by: Marcel Apfelbaum <marcel@redhat.com>
> ---
>
> V1 -> V2:
> - Keep shpc off for QEMU 2.9 machines
Forgot to mentioned the above was Paolo's review, thanks Palo!
Marcel
> - Rebased on Michael's tree to get QEMU 2.10 machine types
>
> Thanks,
> Marcel
>
> hw/pci-bridge/pci_bridge_dev.c | 2 +-
> include/hw/compat.h | 6 +++++-
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/hw/pci-bridge/pci_bridge_dev.c b/hw/pci-bridge/pci_bridge_dev.c
> index 647ad80..5dbd933 100644
> --- a/hw/pci-bridge/pci_bridge_dev.c
> +++ b/hw/pci-bridge/pci_bridge_dev.c
> @@ -163,7 +163,7 @@ static Property pci_bridge_dev_properties[] = {
> DEFINE_PROP_ON_OFF_AUTO(PCI_BRIDGE_DEV_PROP_MSI, PCIBridgeDev, msi,
> ON_OFF_AUTO_AUTO),
> DEFINE_PROP_BIT(PCI_BRIDGE_DEV_PROP_SHPC, PCIBridgeDev, flags,
> - PCI_BRIDGE_DEV_F_SHPC_REQ, false),
> + PCI_BRIDGE_DEV_F_SHPC_REQ, true),
> DEFINE_PROP_END_OF_LIST(),
> };
>
> diff --git a/include/hw/compat.h b/include/hw/compat.h
> index 846b90e..55b1765 100644
> --- a/include/hw/compat.h
> +++ b/include/hw/compat.h
> @@ -2,7 +2,11 @@
> #define HW_COMPAT_H
>
> #define HW_COMPAT_2_9 \
> - /* empty */
> + {\
> + .driver = "pci-bridge",\
> + .property = "shpc",\
> + .value = "off",\
> + },
>
> #define HW_COMPAT_2_8 \
> {\
> --
> 2.9.3
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH V2] Revert "hw/pci: disable pci-bridge's shpc by default"
2017-05-11 10:25 [Qemu-devel] [PATCH V2] Revert "hw/pci: disable pci-bridge's shpc by default" Marcel Apfelbaum
2017-05-11 10:27 ` Marcel Apfelbaum
@ 2017-05-11 10:28 ` Paolo Bonzini
2017-05-17 21:36 ` Michael S. Tsirkin
2 siblings, 0 replies; 4+ messages in thread
From: Paolo Bonzini @ 2017-05-11 10:28 UTC (permalink / raw)
To: Marcel Apfelbaum, qemu-devel; +Cc: mst, lersek, dgilbert
On 11/05/2017 12:25, Marcel Apfelbaum wrote:
> This reverts commit dc0ae767700c156894e36fab89a745a2dc4173de.
>
> Disabling the shpc controller has an undesired side effect.
> The PCI bridge remains with no attached devices at boot time,
> and the guest operating systems do not allocate any resources
> for it, leaving the bridge unusable. Note that the behaviour
> is dictated by the pci bridge specification.
>
> Revert the commit and leave the shpc controller even if is not
> actually used by any architecture. Slot 0 remains unusable at boot time.
>
> Keep shpc off for QEMU 2.9 machines.
>
> Signed-off-by: Marcel Apfelbaum <marcel@redhat.com>
> ---
>
> V1 -> V2:
> - Keep shpc off for QEMU 2.9 machines
> - Rebased on Michael's tree to get QEMU 2.10 machine types
>
> Thanks,
> Marcel
>
> hw/pci-bridge/pci_bridge_dev.c | 2 +-
> include/hw/compat.h | 6 +++++-
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/hw/pci-bridge/pci_bridge_dev.c b/hw/pci-bridge/pci_bridge_dev.c
> index 647ad80..5dbd933 100644
> --- a/hw/pci-bridge/pci_bridge_dev.c
> +++ b/hw/pci-bridge/pci_bridge_dev.c
> @@ -163,7 +163,7 @@ static Property pci_bridge_dev_properties[] = {
> DEFINE_PROP_ON_OFF_AUTO(PCI_BRIDGE_DEV_PROP_MSI, PCIBridgeDev, msi,
> ON_OFF_AUTO_AUTO),
> DEFINE_PROP_BIT(PCI_BRIDGE_DEV_PROP_SHPC, PCIBridgeDev, flags,
> - PCI_BRIDGE_DEV_F_SHPC_REQ, false),
> + PCI_BRIDGE_DEV_F_SHPC_REQ, true),
> DEFINE_PROP_END_OF_LIST(),
> };
>
> diff --git a/include/hw/compat.h b/include/hw/compat.h
> index 846b90e..55b1765 100644
> --- a/include/hw/compat.h
> +++ b/include/hw/compat.h
> @@ -2,7 +2,11 @@
> #define HW_COMPAT_H
>
> #define HW_COMPAT_2_9 \
> - /* empty */
> + {\
> + .driver = "pci-bridge",\
> + .property = "shpc",\
> + .value = "off",\
> + },
>
> #define HW_COMPAT_2_8 \
> {\
>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH V2] Revert "hw/pci: disable pci-bridge's shpc by default"
2017-05-11 10:25 [Qemu-devel] [PATCH V2] Revert "hw/pci: disable pci-bridge's shpc by default" Marcel Apfelbaum
2017-05-11 10:27 ` Marcel Apfelbaum
2017-05-11 10:28 ` Paolo Bonzini
@ 2017-05-17 21:36 ` Michael S. Tsirkin
2 siblings, 0 replies; 4+ messages in thread
From: Michael S. Tsirkin @ 2017-05-17 21:36 UTC (permalink / raw)
To: Marcel Apfelbaum; +Cc: qemu-devel, pbonzini, lersek, dgilbert
On Thu, May 11, 2017 at 01:25:29PM +0300, Marcel Apfelbaum wrote:
> This reverts commit dc0ae767700c156894e36fab89a745a2dc4173de.
>
> Disabling the shpc controller has an undesired side effect.
> The PCI bridge remains with no attached devices at boot time,
> and the guest operating systems do not allocate any resources
> for it, leaving the bridge unusable. Note that the behaviour
> is dictated by the pci bridge specification.
>
> Revert the commit and leave the shpc controller even if is not
> actually used by any architecture. Slot 0 remains unusable at boot time.
>
> Keep shpc off for QEMU 2.9 machines.
>
> Signed-off-by: Marcel Apfelbaum <marcel@redhat.com>
Applied, thanks!
> ---
>
> V1 -> V2:
> - Keep shpc off for QEMU 2.9 machines
> - Rebased on Michael's tree to get QEMU 2.10 machine types
>
> Thanks,
> Marcel
>
> hw/pci-bridge/pci_bridge_dev.c | 2 +-
> include/hw/compat.h | 6 +++++-
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/hw/pci-bridge/pci_bridge_dev.c b/hw/pci-bridge/pci_bridge_dev.c
> index 647ad80..5dbd933 100644
> --- a/hw/pci-bridge/pci_bridge_dev.c
> +++ b/hw/pci-bridge/pci_bridge_dev.c
> @@ -163,7 +163,7 @@ static Property pci_bridge_dev_properties[] = {
> DEFINE_PROP_ON_OFF_AUTO(PCI_BRIDGE_DEV_PROP_MSI, PCIBridgeDev, msi,
> ON_OFF_AUTO_AUTO),
> DEFINE_PROP_BIT(PCI_BRIDGE_DEV_PROP_SHPC, PCIBridgeDev, flags,
> - PCI_BRIDGE_DEV_F_SHPC_REQ, false),
> + PCI_BRIDGE_DEV_F_SHPC_REQ, true),
> DEFINE_PROP_END_OF_LIST(),
> };
>
> diff --git a/include/hw/compat.h b/include/hw/compat.h
> index 846b90e..55b1765 100644
> --- a/include/hw/compat.h
> +++ b/include/hw/compat.h
> @@ -2,7 +2,11 @@
> #define HW_COMPAT_H
>
> #define HW_COMPAT_2_9 \
> - /* empty */
> + {\
> + .driver = "pci-bridge",\
> + .property = "shpc",\
> + .value = "off",\
> + },
>
> #define HW_COMPAT_2_8 \
> {\
> --
> 2.9.3
^ permalink raw reply [flat|nested] 4+ messages in thread