qemu/hw/core
Zhao Liu 0d2d00e57a hw/core/machine: Reject thread level cache
Currently, neither i386 nor ARM have real hardware support for per-
thread cache, and there is no clear demand for this specific cache
topology.

Additionally, since ARM even can't support this special cache topology
in device tree, it is unnecessary to support it at this moment, even
though per-thread cache might have potential scheduling benefits for
VMs without CPU affinity.

Therefore, disable thread-level cache topology in the general machine
part. At present, i386 has not enabled SMP cache, so disabling the
thread parameter does not pose compatibility issues.

In the future, if there is a clear demand for this feature, the correct
approach would be to add a new control field in MachineClass.smp_props
and enable it only for the machines that require it.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20250110145115.1574345-2-zhao1.liu@intel.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
2025-02-16 14:25:07 +01:00
..
bus.c hw/core: Remove transitional infrastructure from BusClass 2024-02-02 13:51:57 +00:00
clock-vmstate.c hw/core: Constify VMState 2023-12-29 11:17:30 +11:00
clock.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
cpu-common.c cpu: Remove nr_cores from struct CPUState 2025-01-10 23:34:45 +01:00
cpu-system.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
eif.c hw/core/eif: Use stateful qcrypto apis 2024-12-13 15:26:58 +01:00
eif.h hw/core: Add Enclave Image Format (EIF) related helpers 2024-10-31 18:28:32 +01:00
fw-path-provider.c Include qemu/module.h where needed, drop it from qemu-common.h 2019-06-12 13:18:33 +02:00
generic-loader.c hw/loader: Pass ELFDATA endian order argument to load_elf_as() 2025-01-31 19:36:44 +01:00
gpio.c qdev: Use machine_get_container() 2025-01-09 18:16:24 +01:00
guest-loader.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
guest-loader.h hw/core: implement a guest-loader to support static hypervisor guests 2021-03-10 15:34:11 +00:00
hotplug.c call HotplugHandler->plug() as the last step in device realization 2018-10-19 13:44:12 +02:00
irq.c hw/irq: Introduce qemu_init_irqs() helper 2025-01-31 19:36:44 +01:00
Kconfig hw/core: Add Enclave Image Format (EIF) related helpers 2024-10-31 18:28:32 +01:00
loader-fit.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
loader.c hw/loader: Pass ELFDATA endian order argument to load_elf() 2025-01-31 19:36:44 +01:00
machine-hmp-cmds.c qapi: Move include/qapi/qmp/ to include/qobject/ 2025-02-10 15:33:16 +01:00
machine-qmp-cmds.c qapi: Move include/qapi/qmp/ to include/qobject/ 2025-02-10 15:33:16 +01:00
machine-smp.c hw/core/machine: Reject thread level cache 2025-02-16 14:25:07 +01:00
machine.c * Convert more avocado tests to the functional framework 2025-01-30 10:29:40 -05:00
meson.build qdev: Implement qdev_create_fake_machine() for user emulation 2025-01-09 18:16:24 +01:00
nmi.c hw/core: Improve error message when machine doesn't provide NMIs 2023-02-23 14:10:17 +01:00
null-machine.c Do not include sysemu/sysemu.h if it's not really necessary 2021-05-02 17:24:50 +02:00
numa.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
or-irq.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
platform-bus.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
ptimer.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
qdev-clock.c clock: inline most of qdev_init_clocklist 2024-12-10 18:49:24 +01:00
qdev-fw.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
qdev-hotplug.c hw/qdev: Check machine_hotplug_handler in hotplug_unplug_allowed_common 2025-01-13 17:16:03 +01:00
qdev-prop-internal.h qdev: Make qdev_propinfo_get_uint16() static 2020-12-15 10:02:07 -05:00
qdev-properties-system.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
qdev-properties.c qapi: Move include/qapi/qmp/ to include/qobject/ 2025-02-10 15:33:16 +01:00
qdev-user.c qdev: Implement qdev_create_fake_machine() for user emulation 2025-01-09 18:16:24 +01:00
qdev.c qapi: Move include/qapi/qmp/ to include/qobject/ 2025-02-10 15:33:16 +01:00
register.c hw/core/register: Add more 64-bit utilities 2021-09-01 11:59:12 +10:00
reset.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
resetcontainer.c hw/core: Add ResetContainer which holds objects implementing Resettable 2024-02-27 13:01:42 +00:00
resettable.c hw/core/resettable: Remove transitional_function machinery 2024-09-13 15:31:46 +01:00
split-irq.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
stream.c hw/core/stream: Rename StreamSlave as StreamSink 2020-12-10 12:15:04 -05:00
sysbus-fdt.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
sysbus.c qdev: Use machine_get_container() 2025-01-09 18:16:24 +01:00
trace-events trace-events: remove the remaining vcpu trace events 2023-06-01 11:05:05 -04:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
uboot_image.h license: Update deprecated SPDX tag GPL-2.0+ to GPL-2.0-or-later 2024-09-20 10:11:59 +03:00
vm-change-state-handler.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
vmstate-if.c vmstate: add qom interface to get id 2020-01-06 18:41:32 +04:00