On 6/2/23 08:59, Nicholas Piggin wrote:
On Thu Jun 1, 2023 at 5:20 PM AEST, Cédric Le Goater wrote:
On 5/31/23 03:23, Nicholas Piggin wrote:
TCG now supports multi-threaded configuration at least enough for
pseries to be functional enough to boot Linux.
This requires PIR and TIR be set, because that's how sibling thread
matching is done.
Signed-off-by: Nicholas Piggin <[email protected]>
---
hw/ppc/spapr.c | 4 ++--
hw/ppc/spapr_cpu_core.c | 7 +++++--
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index dcb7f1c70a..11074cefea 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -2524,8 +2524,8 @@ static void spapr_set_vsmt_mode(SpaprMachineState *spapr,
Error **errp)
int ret;
unsigned int smp_threads = ms->smp.threads;
- if (!kvm_enabled() && (smp_threads > 1)) {
- error_setg(errp, "TCG cannot support more than 1 thread/core "
+ if (!kvm_enabled() && (smp_threads > 8)) {
+ error_setg(errp, "TCG cannot support more than 8 threads/core "
"on a pseries machine");
I think we should add test on the CPU also.
On the CPU type, POWER7 can have 1/2/4, POWER8 can have 1/2/4/8?
POWER9 could also switch PVR between big and small core depending
on whether you select SMT8 I suppose.
What I meant is to limit the support to the CPUs which will be most likely
used : POWER8-10. I don't think we care much about the others P7, P5+, 970.
Thanks,
C.