From: Greg Kurz <groug@kaod.org>
To: Thomas Huth <thuth@redhat.com>
Cc: qemu-devel@nongnu.org, qemu-ppc@nongnu.org,
David Gibson <david@gibson.dropbear.id.au>,
Peter Maydell <peter.maydell@linaro.org>,
David Hildenbrand <david@redhat.com>,
Michael Roth <mdroth@linux.vnet.ibm.com>
Subject: Re: [Qemu-devel] [PATCH] spapr: Explicitly check machine support before using EVENT_CLASS_HOT_PLUG
Date: Fri, 1 Mar 2019 17:16:02 +0100 [thread overview]
Message-ID: <20190301171602.3f8fce74@bahia.lan> (raw)
In-Reply-To: <70418309-8593-44be-0549-8531a9ccaa2e@redhat.com>
On Fri, 1 Mar 2019 16:24:48 +0100
Thomas Huth <thuth@redhat.com> wrote:
> On 01/03/2019 15.17, Greg Kurz wrote:
> > Recent commit b8165118f52c "spapr: support memory unplug for qtest" broke
> > CPU hotplug tests for old machine types:
> >
> > $ QTEST_QEMU_BINARY=ppc64-softmmu/qemu-system-ppc64 ./tests/cpu-plug-test -m=slow
> > /ppc64/cpu-plug/pseries-3.1/device-add/2x3x1&maxcpus=6: OK
> > /ppc64/cpu-plug/pseries-2.12-sxxm/device-add/2x3x1&maxcpus=6: OK
> > /ppc64/cpu-plug/pseries-3.0/device-add/2x3x1&maxcpus=6: OK
> > /ppc64/cpu-plug/pseries-2.10/device-add/2x3x1&maxcpus=6: OK
> > /ppc64/cpu-plug/pseries-2.11/device-add/2x3x1&maxcpus=6: OK
> > /ppc64/cpu-plug/pseries-2.12/device-add/2x3x1&maxcpus=6: OK
> > /ppc64/cpu-plug/pseries-2.9/device-add/2x3x1&maxcpus=6: OK
> > /ppc64/cpu-plug/pseries-2.7/device-add/2x3x1&maxcpus=6: **
> > ERROR:/home/thuth/devel/qemu/hw/ppc/spapr_events.c:313:rtas_event_log_to_source: assertion failed: (source->enabled)
> > Broken pipe
> > /home/thuth/devel/qemu/tests/libqtest.c:143: kill_qemu() detected QEMU death from signal 6 (Aborted) (core dumped)
> > Aborted (core dumped)
> >
> > The rtas_event_log_to_source() function is supposed to return the event
> > source to be used for a given event type. In the case of hotplug, it first
> > tries EVENT_CLASS_HOT_PLUG and, if the guest doesn't support it, it falls
> > back to EVENT_CLASS_EPOW.
> >
> > This works well for machine types that enable EVENT_CLASS_HOT_PLUG. For
> > older machine types, this happened to work because they don't set the
> > OV5_HP_EVT bit in spapr->ov5. CAS hence logically keeps the bit cleared
> > in spapr->ov5_cas and we avoid the assert.
> >
> > As shown by commit b8165118f52c, the logic is fragile and we need a
> > bigger hammer to ensure that rtas_event_log_to_source() doesn't go
> > down the EVENT_CLASS_HOT_PLUG path with older machine types.
> >
> > Signed-off-by: Greg Kurz <groug@kaod.org>
> > ---
> > hw/ppc/spapr_events.c | 12 +++++++-----
> > 1 file changed, 7 insertions(+), 5 deletions(-)
>
> Thanks, that fixes the problem for me!
>
> Tested-by: Thomas Huth <thuth@redhat.com>
I realize I should have put this also:
Reported-by: Thomas Huth <thuth@redhat.com>
Cheers,
--
Greg
next prev parent reply other threads:[~2019-03-01 16:16 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-01 14:17 [Qemu-devel] [PATCH] spapr: Explicitly check machine support before using EVENT_CLASS_HOT_PLUG Greg Kurz
2019-03-01 15:24 ` Thomas Huth
2019-03-01 16:16 ` Greg Kurz [this message]
2019-03-01 16:06 ` David Hildenbrand
2019-03-01 16:20 ` Michael Roth
2019-03-01 17:27 ` Greg Kurz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190301171602.3f8fce74@bahia.lan \
--to=groug@kaod.org \
--cc=david@gibson.dropbear.id.au \
--cc=david@redhat.com \
--cc=mdroth@linux.vnet.ibm.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).