From: Nicholas Piggin <npiggin@gmail.com>
To: qemu-ppc@nongnu.org
Cc: "Nicholas Piggin" <npiggin@gmail.com>,
qemu-devel@nongnu.org,
"Daniel Henrique Barboza" <dbarboza@ventanamicro.com>,
"Cédric Le Goater" <clg@kaod.org>
Subject: [PATCH 0/4] target/ppc: TCG SMT support for spapr
Date: Mon, 5 Jun 2023 21:23:19 +1000 [thread overview]
Message-ID: <20230605112323.179259-1-npiggin@gmail.com> (raw)
Previous RFC here
https://lists.gnu.org/archive/html/qemu-ppc/2023-05/msg00453.html
This series drops patch 1 from the previous, which is more of
a standalone bugfix.
Also accounted for Cedric's comments, except a nicer way to
set cpu_index vs PIR/TIR SPRs, which is not quite trivial.
This limits support for SMT to POWER8 and newer. It is also
incompatible with nested-HV so that is checked for too.
Iterating CPUs to find siblings for now I kept because similar
loops exist in a few places, and it is not conceptually
difficult for SMT, just fiddly code to improve. For now it
should not be much performane concern.
I removed hypervisor msgsnd support from patch 3, which is not
required for spapr and added significantly to the patch.
For now nobody has objected to the way shared SPR access is
handled (serialised with TCG atomics support) so we'll keep
going with it.
Thanks,
Nick
Nicholas Piggin (4):
target/ppc: Add initial flags and helpers for SMT support
target/ppc: Add support for SMT CTRL register
target/ppc: Add msgsndp and DPDES SMT support
spapr: Allow up to 8 threads SMT on POWER8 and newer
hw/ppc/ppc.c | 6 ++++
hw/ppc/spapr.c | 16 +++++++---
hw/ppc/spapr_caps.c | 14 ++++++++
hw/ppc/spapr_cpu_core.c | 7 ++--
include/hw/ppc/ppc.h | 1 +
target/ppc/cpu.h | 9 ++++++
target/ppc/cpu_init.c | 5 +++
target/ppc/excp_helper.c | 30 ++++++++++++++---
target/ppc/gdbstub.c | 2 +-
target/ppc/helper.h | 2 ++
target/ppc/misc_helper.c | 69 ++++++++++++++++++++++++++++++++++++----
target/ppc/translate.c | 46 ++++++++++++++++++++++++++-
12 files changed, 188 insertions(+), 19 deletions(-)
--
2.40.1
next reply other threads:[~2023-06-05 11:25 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-05 11:23 Nicholas Piggin [this message]
2023-06-05 11:23 ` [PATCH 1/4] target/ppc: Add initial flags and helpers for SMT support Nicholas Piggin
2023-06-05 11:23 ` [PATCH 2/4] target/ppc: Add support for SMT CTRL register Nicholas Piggin
2023-06-07 5:31 ` Cédric Le Goater
2023-06-05 11:23 ` [PATCH 3/4] target/ppc: Add msgsndp and DPDES SMT support Nicholas Piggin
2023-06-05 11:23 ` [PATCH 4/4] spapr: Allow up to 8 threads SMT on POWER8 and newer Nicholas Piggin
2023-06-20 9:27 ` Harsh Prateek Bora
2023-06-20 9:41 ` Nicholas Piggin
2023-06-06 14:09 ` [PATCH 0/4] target/ppc: TCG SMT support for spapr Cédric Le Goater
2023-06-20 10:12 ` Nicholas Piggin
2023-06-20 10:27 ` Cédric Le Goater
2023-06-20 10:45 ` Nicholas Piggin
2023-06-22 7:26 ` Cédric Le Goater
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=20230605112323.179259-1-npiggin@gmail.com \
--to=npiggin@gmail.com \
--cc=clg@kaod.org \
--cc=dbarboza@ventanamicro.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
/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).