qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] Revert "hw/pci: disable pci-bridge's shpc by default"
@ 2017-05-10  9:29 Marcel Apfelbaum
  2017-05-10 15:38 ` Paolo Bonzini
  0 siblings, 1 reply; 4+ messages in thread
From: Marcel Apfelbaum @ 2017-05-10  9:29 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-stable, marcel, mst

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 all 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.

Signed-off-by: Marcel Apfelbaum <marcel@redhat.com>
---
 hw/pci-bridge/pci_bridge_dev.c | 2 +-
 include/hw/compat.h            | 4 ----
 2 files changed, 1 insertion(+), 5 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..eff021f 100644
--- a/include/hw/compat.h
+++ b/include/hw/compat.h
@@ -18,10 +18,6 @@
         .property = "old-multiple-chip-handling",\
         .value    = "on",\
     },{\
-        .driver   = "pci-bridge",\
-        .property = "shpc",\
-        .value    = "on",\
-    },{\
         .driver   = TYPE_PCI_DEVICE,\
         .property = "x-pcie-extcap-init",\
         .value    = "off",\
-- 
2.9.3

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] [PATCH] Revert "hw/pci: disable pci-bridge's shpc by default"
  2017-05-10  9:29 [Qemu-devel] [PATCH] Revert "hw/pci: disable pci-bridge's shpc by default" Marcel Apfelbaum
@ 2017-05-10 15:38 ` Paolo Bonzini
  2017-05-10 17:06   ` Marcel Apfelbaum
  2017-05-10 18:24   ` Michael S. Tsirkin
  0 siblings, 2 replies; 4+ messages in thread
From: Paolo Bonzini @ 2017-05-10 15:38 UTC (permalink / raw)
  To: Marcel Apfelbaum, qemu-devel; +Cc: qemu-stable, mst



On 10/05/2017 11:29, Marcel Apfelbaum wrote:
> +++ 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..eff021f 100644
> --- a/include/hw/compat.h
> +++ b/include/hw/compat.h
> @@ -18,10 +18,6 @@
>          .property = "old-multiple-chip-handling",\
>          .value    = "on",\
>      },{\
> -        .driver   = "pci-bridge",\
> -        .property = "shpc",\
> -        .value    = "on",\
> -    },{\

Unless we make a conscious decision to break PCI bridge backwards
compatibility, you now have to disable it for 2.9 and leave this
HW_COMPAT_2_8 hunk intact.  Peter Xu has a patch to add the 2.10 machine
types.

Paolo

>          .driver   = TYPE_PCI_DEVICE,\
>          .property = "x-pcie-extcap-init",\
>          .value    = "off",\
> -- 2.9.3

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] [PATCH] Revert "hw/pci: disable pci-bridge's shpc by default"
  2017-05-10 15:38 ` Paolo Bonzini
@ 2017-05-10 17:06   ` Marcel Apfelbaum
  2017-05-10 18:24   ` Michael S. Tsirkin
  1 sibling, 0 replies; 4+ messages in thread
From: Marcel Apfelbaum @ 2017-05-10 17:06 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel, qemu-stable, mst



----- Original Message -----
> From: "Paolo Bonzini" <pbonzini@redhat.com>
> To: "Marcel Apfelbaum" <marcel@redhat.com>, qemu-devel@nongnu.org
> Cc: qemu-stable@nongnu.org, mst@redhat.com
> Sent: Wednesday, May 10, 2017 6:38:45 PM
> Subject: Re: [Qemu-devel] [PATCH] Revert "hw/pci: disable pci-bridge's shpc by default"
> 
> 
> 
> On 10/05/2017 11:29, Marcel Apfelbaum wrote:
> > +++ 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..eff021f 100644
> > --- a/include/hw/compat.h
> > +++ b/include/hw/compat.h
> > @@ -18,10 +18,6 @@
> >          .property = "old-multiple-chip-handling",\
> >          .value    = "on",\
> >      },{\
> > -        .driver   = "pci-bridge",\
> > -        .property = "shpc",\
> > -        .value    = "on",\
> > -    },{\
> 

Hi Paolo,

> Unless we make a conscious decision to break PCI bridge backwards
> compatibility, you now have to disable it for 2.9 and leave this
> HW_COMPAT_2_8 hunk intact.  Peter Xu has a patch to add the 2.10 machine
> types.
> 

I thought is not an interesting enough scenario to keep it "broken" for 2.9,
but I'll do that, sure, I'll add it on top of Peter's patch.

Thanks,
Marcel

> Paolo
> 
> >          .driver   = TYPE_PCI_DEVICE,\
> >          .property = "x-pcie-extcap-init",\
> >          .value    = "off",\
> > -- 2.9.3
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] [PATCH] Revert "hw/pci: disable pci-bridge's shpc by default"
  2017-05-10 15:38 ` Paolo Bonzini
  2017-05-10 17:06   ` Marcel Apfelbaum
@ 2017-05-10 18:24   ` Michael S. Tsirkin
  1 sibling, 0 replies; 4+ messages in thread
From: Michael S. Tsirkin @ 2017-05-10 18:24 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: Marcel Apfelbaum, qemu-devel, qemu-stable

On Wed, May 10, 2017 at 05:38:45PM +0200, Paolo Bonzini wrote:
> 
> 
> On 10/05/2017 11:29, Marcel Apfelbaum wrote:
> > +++ 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..eff021f 100644
> > --- a/include/hw/compat.h
> > +++ b/include/hw/compat.h
> > @@ -18,10 +18,6 @@
> >          .property = "old-multiple-chip-handling",\
> >          .value    = "on",\
> >      },{\
> > -        .driver   = "pci-bridge",\
> > -        .property = "shpc",\
> > -        .value    = "on",\
> > -    },{\
> 
> Unless we make a conscious decision to break PCI bridge backwards
> compatibility, you now have to disable it for 2.9 and leave this
> HW_COMPAT_2_8 hunk intact.  Peter Xu has a patch to add the 2.10 machine
> types.
> 
> Paolo
> 
> >          .driver   = TYPE_PCI_DEVICE,\
> >          .property = "x-pcie-extcap-init",\
> >          .value    = "off",\
> > -- 2.9.3


It's going upstream now, I just need to rebase.

-- 
MST

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-05-10 18:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-10  9:29 [Qemu-devel] [PATCH] Revert "hw/pci: disable pci-bridge's shpc by default" Marcel Apfelbaum
2017-05-10 15:38 ` Paolo Bonzini
2017-05-10 17:06   ` Marcel Apfelbaum
2017-05-10 18:24   ` 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).