Message ID | 1602767767-32713-1-git-send-email-mjrosato@linux.ibm.com |
---|---|
State | New |
Headers | show |
Series | s390x/s390-virtio-ccw: Reset PCI devices during subsystem reset | expand |
On 15.10.20 15:16, Matthew Rosato wrote: > Currently, a subsystem reset event leaves PCI devices enabled, causing > issues post-reset in the guest (an example would be after a kexec). These > devices need to be reset during a subsystem reset, allowing them to be > properly re-enabled afterwards. Add the S390 PCI host bridge to the list > of qdevs to be reset during subsystem reset. > > Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com> > Reviewed-by: Eric Farman <farman@linux.ibm.com> Makese sense. Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> > --- > hw/s390x/s390-virtio-ccw.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c > index e52182f..2e90033 100644 > --- a/hw/s390x/s390-virtio-ccw.c > +++ b/hw/s390x/s390-virtio-ccw.c > @@ -101,6 +101,7 @@ static const char *const reset_dev_types[] = { > "s390-sclp-event-facility", > "s390-flic", > "diag288", > + TYPE_S390_PCI_HOST_BRIDGE, > }; > > static void subsystem_reset(void) >
On 15.10.20 15:32, Christian Borntraeger wrote: > > > On 15.10.20 15:16, Matthew Rosato wrote: >> Currently, a subsystem reset event leaves PCI devices enabled, causing >> issues post-reset in the guest (an example would be after a kexec). These >> devices need to be reset during a subsystem reset, allowing them to be >> properly re-enabled afterwards. Add the S390 PCI host bridge to the list >> of qdevs to be reset during subsystem reset. >> >> Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com> >> Reviewed-by: Eric Farman <farman@linux.ibm.com> > > Makese sense. > Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> A question. Is this a stable candidate? > > >> --- >> hw/s390x/s390-virtio-ccw.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c >> index e52182f..2e90033 100644 >> --- a/hw/s390x/s390-virtio-ccw.c >> +++ b/hw/s390x/s390-virtio-ccw.c >> @@ -101,6 +101,7 @@ static const char *const reset_dev_types[] = { >> "s390-sclp-event-facility", >> "s390-flic", >> "diag288", >> + TYPE_S390_PCI_HOST_BRIDGE, >> }; >> >> static void subsystem_reset(void) >>
On 10/15/20 3:34 PM, Christian Borntraeger wrote: > > > On 15.10.20 15:32, Christian Borntraeger wrote: >> >> >> On 15.10.20 15:16, Matthew Rosato wrote: >>> Currently, a subsystem reset event leaves PCI devices enabled, causing >>> issues post-reset in the guest (an example would be after a kexec). These >>> devices need to be reset during a subsystem reset, allowing them to be >>> properly re-enabled afterwards. Add the S390 PCI host bridge to the list >>> of qdevs to be reset during subsystem reset. >>> >>> Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com> >>> Reviewed-by: Eric Farman <farman@linux.ibm.com> >> >> Makese sense. >> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> > > A question. Is this a stable candidate? As this can prevent a SUSE guest (which does kexec during boot because of grub) from seeing any PCI devices I'd say yes. > >> >> >>> --- >>> hw/s390x/s390-virtio-ccw.c | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c >>> index e52182f..2e90033 100644 >>> --- a/hw/s390x/s390-virtio-ccw.c >>> +++ b/hw/s390x/s390-virtio-ccw.c >>> @@ -101,6 +101,7 @@ static const char *const reset_dev_types[] = { >>> "s390-sclp-event-facility", >>> "s390-flic", >>> "diag288", >>> + TYPE_S390_PCI_HOST_BRIDGE, >>> }; >>> >>> static void subsystem_reset(void) >>>
On 10/15/20 9:37 AM, Niklas Schnelle wrote: > > > On 10/15/20 3:34 PM, Christian Borntraeger wrote: >> >> >> On 15.10.20 15:32, Christian Borntraeger wrote: >>> >>> >>> On 15.10.20 15:16, Matthew Rosato wrote: >>>> Currently, a subsystem reset event leaves PCI devices enabled, causing >>>> issues post-reset in the guest (an example would be after a kexec). These >>>> devices need to be reset during a subsystem reset, allowing them to be >>>> properly re-enabled afterwards. Add the S390 PCI host bridge to the list >>>> of qdevs to be reset during subsystem reset. >>>> >>>> Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com> >>>> Reviewed-by: Eric Farman <farman@linux.ibm.com> >>> >>> Makese sense. >>> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> >> >> A question. Is this a stable candidate? > > As this can prevent a SUSE guest (which does kexec during boot because of grub) > from seeing any PCI devices I'd say yes. > Yes, agreed. >> >>> >>> >>>> --- >>>> hw/s390x/s390-virtio-ccw.c | 1 + >>>> 1 file changed, 1 insertion(+) >>>> >>>> diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c >>>> index e52182f..2e90033 100644 >>>> --- a/hw/s390x/s390-virtio-ccw.c >>>> +++ b/hw/s390x/s390-virtio-ccw.c >>>> @@ -101,6 +101,7 @@ static const char *const reset_dev_types[] = { >>>> "s390-sclp-event-facility", >>>> "s390-flic", >>>> "diag288", >>>> + TYPE_S390_PCI_HOST_BRIDGE, >>>> }; >>>> >>>> static void subsystem_reset(void) >>>>
On Thu, 15 Oct 2020 09:16:07 -0400 Matthew Rosato <mjrosato@linux.ibm.com> wrote: > Currently, a subsystem reset event leaves PCI devices enabled, causing > issues post-reset in the guest (an example would be after a kexec). These > devices need to be reset during a subsystem reset, allowing them to be > properly re-enabled afterwards. Add the S390 PCI host bridge to the list > of qdevs to be reset during subsystem reset. > > Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com> > Reviewed-by: Eric Farman <farman@linux.ibm.com> Acked-by: Halil Pasic <pasic@linux.ibm.com> > --- > hw/s390x/s390-virtio-ccw.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c > index e52182f..2e90033 100644 > --- a/hw/s390x/s390-virtio-ccw.c > +++ b/hw/s390x/s390-virtio-ccw.c > @@ -101,6 +101,7 @@ static const char *const reset_dev_types[] = { > "s390-sclp-event-facility", > "s390-flic", > "diag288", > + TYPE_S390_PCI_HOST_BRIDGE, > }; > > static void subsystem_reset(void)
On Thu, 15 Oct 2020 09:16:07 -0400 Matthew Rosato <mjrosato@linux.ibm.com> wrote: > Currently, a subsystem reset event leaves PCI devices enabled, causing > issues post-reset in the guest (an example would be after a kexec). These > devices need to be reset during a subsystem reset, allowing them to be > properly re-enabled afterwards. Add the S390 PCI host bridge to the list > of qdevs to be reset during subsystem reset. > > Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com> > Reviewed-by: Eric Farman <farman@linux.ibm.com> > --- > hw/s390x/s390-virtio-ccw.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c > index e52182f..2e90033 100644 > --- a/hw/s390x/s390-virtio-ccw.c > +++ b/hw/s390x/s390-virtio-ccw.c > @@ -101,6 +101,7 @@ static const char *const reset_dev_types[] = { > "s390-sclp-event-facility", > "s390-flic", > "diag288", > + TYPE_S390_PCI_HOST_BRIDGE, > }; > > static void subsystem_reset(void) Thanks, applied (with cc:stable added.)
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index e52182f..2e90033 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -101,6 +101,7 @@ static const char *const reset_dev_types[] = { "s390-sclp-event-facility", "s390-flic", "diag288", + TYPE_S390_PCI_HOST_BRIDGE, }; static void subsystem_reset(void)