qemu/hw
Nicholas Piggin dc5e072188 spapr: TCG allow up to 8-thread SMT on POWER8 and newer CPUs
PPC TCG supports SMT CPU configurations for non-hypervisor state, so
permit POWER8-10 pseries machines to enable SMT.

This requires PIR and TIR be set, because that's how sibling thread
matching is done by TCG.

spapr's nested-HV capability does not currently coexist with SMT, so
that combination is prohibited (interestingly somewhat analogous to
LPAR-per-core mode on real hardware which also does not support KVM).

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
[ clg: Also test smp_threads when checking for POWER8 CPU and above ]
Signed-off-by: Cédric Le Goater <clg@kaod.org>
2023-06-25 22:41:30 +02:00
..
9pfs meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
acpi meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
adc meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
alpha hw/alpha: Use MachineClass->default_nic in the alpha machine 2023-05-26 09:10:49 +02:00
arm hw/arm/sbsa-ref: add ITS support in SBSA GIC 2023-06-23 11:29:38 +01:00
audio meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
avr Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
block meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
char meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
core meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
cpu meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
cris Do not include exec/address-spaces.h if it's not really necessary 2021-05-02 17:24:51 +02:00
cxl meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
display meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
dma meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
gpio meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
hppa target/hppa: Provide qemu version via fw_cfg to firmware 2023-06-24 13:39:48 +02:00
hyperv win32: replace closesocket() with close() wrapper 2023-03-13 15:39:31 +04:00
i2c meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
i386 meson: Replace CONFIG_SOFTMMU -> CONFIG_SYSTEM_ONLY 2023-06-20 10:01:30 +02:00
ide meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
input meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
intc meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
ipack meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
ipmi meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
isa meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
loongarch hw/loongarch: Supplement cpu topology arguments 2023-06-16 17:58:46 +08:00
m68k q800: move macfb device to Q800MachineState 2023-06-22 09:30:11 +02:00
mem meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
microblaze hw/char/xilinx_uartlite: Open-code xilinx_uartlite_create() 2023-02-27 13:27:05 +00:00
mips hw/mips/malta: Fix the malta machine on big endian hosts 2023-06-05 20:48:34 +02:00
misc mac_via: fix rtc command decoding for the PRAM seconds registers 2023-06-22 09:31:18 +02:00
net hw/net/dp8393x.c: move TYPE_DP8393X and dp8393xState into dp8393x.h 2023-06-22 09:25:40 +02:00
nios2 hw/nios2: set machine->fdt in nios2_load_dtb() 2022-10-17 16:15:10 -03:00
nubus meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
nvme meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
nvram meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
openrisc *: Add missing includes of qemu/error-report.h 2023-03-22 15:06:57 +00:00
pci meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
pci-bridge meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
pci-host ppc/pnv/pci: Clean up error messages 2023-06-25 22:41:30 +02:00
pcmcia meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
ppc spapr: TCG allow up to 8-thread SMT on POWER8 and newer CPUs 2023-06-25 22:41:30 +02:00
rdma meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
remote meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
riscv riscv/virt: Support using pflash via -blockdev option 2023-06-13 17:39:45 +10:00
rtc meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
rx bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
s390x hw/s390x: Use MachineClass->default_nic in the s390x machine 2023-05-22 09:44:48 +02:00
scsi meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
sd meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
sensor meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
sh4 hw/sh4: Use MachineClass->default_nic in the sh4 r2d machine 2023-05-22 09:44:48 +02:00
smbios meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
sparc bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
sparc64 hw/char/parallel-isa: Export struct ISAParallelState 2023-06-13 11:28:58 +02:00
ssi meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
timer meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
tpm meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
tricore hw/tricore: fix inclusion of tricore_testboard 2021-07-20 20:10:21 +02:00
usb meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
vfio hw/vfio: Add number of dirty pages to vfio_get_dirty_bitmap tracepoint 2023-06-13 11:28:58 +02:00
virtio meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
watchdog meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
xen meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
xenpv hw/xenpv: Initialize Xen backend operations 2023-03-24 14:52:14 +00:00
xtensa hw/xtensa: Use MachineClass->default_nic in the virt machine 2023-05-26 09:10:49 +02:00
Kconfig xen: add CONFIG_XEN_BUS and CONFIG_XEN_EMU options for Xen emulation 2023-03-01 08:22:49 +00:00
meson.build hw/loongarch: Add support loongson3 virt machine type. 2022-06-06 18:09:03 +00:00