qemu-cr16/include/hw
Pierre Morel c809bbc8e9 s390x/cpu topology: add topology entries on CPU hotplug
The topology information are attributes of the CPU and are
specified during the CPU device creation.

On hot plug we:
- calculate the default values for the topology for drawers,
  books and sockets in the case they are not specified.
- verify the CPU attributes
- check that we have still room on the desired socket

The possibility to insert a CPU in a mask is dependent on the
number of cores allowed in a socket, a book or a drawer, the
checking is done during the hot plug of the CPU to have an
immediate answer.

If the complete topology is not specified, the core is added
in the physical topology based on its core ID and it gets
defaults values for the modifier attributes.

This way, starting QEMU without specifying the topology can
still get some advantage of the CPU topology.

Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Co-developed-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Message-ID: <20231016183925.2384704-4-nsg@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2023-10-20 07:16:53 +02:00
..
acpi hw/i386: Remove now redundant TYPE_ACPI_GED_X86 2023-10-04 18:15:05 -04:00
adc
arm hw/arm/versal: Connect the CFRAME_REG and CFRAME_BCAST_REG 2023-09-08 16:41:35 +01:00
audio Pull request q800 20231008 2023-10-09 10:10:48 -04:00
block swim: update IWM/ISM register block decoding 2023-10-06 10:33:43 +02:00
char include/: spelling fixes 2023-09-08 13:08:52 +03:00
core gdbstub: Replace gdb_regs with an array 2023-10-11 08:46:33 +01:00
cpu
cris
cxl hw/cxl: Support 4 HDM decoders at all levels of topology 2023-10-04 18:15:06 -04:00
display ramfb: add migration support 2023-10-18 10:10:49 +02:00
dma
firmware
gpio hw/gpio/nrf51: implement DETECT signal 2023-08-22 17:30:59 +01:00
hyperv include/: spelling fixes 2023-09-08 13:08:52 +03:00
i2c aspeed queue: 2023-09-06 11:14:55 -04:00
i386 hw/i386/pc: improve physical address space bound check for 32-bit x86 systems 2023-10-04 18:15:06 -04:00
ide hw/ide: Extract bmdma_status_writeb() 2023-07-11 00:11:25 +02:00
input
intc arm: spelling fixes 2023-07-25 17:13:53 +03:00
ipack
ipmi
isa hw/isa/vt82c686: Remove via_isa_set_irq() 2023-07-11 00:11:25 +02:00
loongarch hw/loongarch/virt: Remove unused ISA Bus 2023-10-13 10:03:47 +08:00
m68k q800: add alias for MacOS toolbox ROM at 0x40000000 2023-10-06 10:33:43 +02:00
mem memory-device,vhost: Support automatic decision on the number of memslots 2023-10-12 14:15:22 +02:00
mips
misc mac_via: work around underflow in TimeDBRA timing loop in SETUPTIMEK 2023-10-06 10:33:43 +02:00
net include/: spelling fixes 2023-09-08 13:08:52 +03:00
nubus
nvram bulk: Do not declare function prototypes using 'extern' keyword 2023-08-31 19:47:43 +02:00
openrisc
pci pci: SLT must be RO 2023-10-04 04:53:52 -04:00
pci-bridge
pci-host pc: remove short_root_bus property 2023-09-29 09:33:10 +02:00
ppc hw/ppc: Clean up local variable shadowing in _FDT helper routine 2023-09-29 10:07:17 +02:00
rdma
remote
riscv riscv: spelling fixes 2023-09-08 13:08:52 +03:00
rtc hw/rtc/aspeed_rtc: Use 64-bit offset for holding time_t difference 2023-08-31 09:45:18 +01:00
rx
s390x s390x/cpu topology: add topology entries on CPU hotplug 2023-10-20 07:16:53 +02:00
scsi scsi: fetch unit attention when creating the request 2023-07-14 11:10:58 +02:00
sd hw/sd: Introduce a "sd-card" SPI variant model 2023-09-01 11:40:04 +02:00
sensor
sh4
southbridge hw/isa/piix3: Resolve redundant TYPE_PIIX3_XEN_DEVICE 2023-06-07 15:07:10 +01:00
sparc
ssi include/: spelling fixes 2023-09-08 13:08:52 +03:00
timer
tricore
usb
vfio vfio/common: Move legacy VFIO backend code into separate container.c 2023-10-18 10:10:49 +02:00
virtio virtio-gpu rutabaga support 2023-10-17 10:05:51 -04:00
watchdog hw/watchdog: Allwinner WDT emulation for system reset 2023-04-20 10:21:13 +01:00
xen xen_arm: Initialize RAM and add hi/low memory regions 2023-08-30 18:23:08 -07:00
xtensa
boards.h CPU topology: extend with s390 specifics 2023-10-20 07:16:53 +02:00
clock.h include/: spelling fixes 2023-09-08 13:08:52 +03:00
elf_ops.h replace TABs with spaces 2023-03-20 12:43:50 +01:00
fw-path-provider.h
hotplug.h pci: fix 'hotplugglable' property behavior 2023-03-07 12:38:59 -05:00
hw.h
ide.h hw/ide: Declare ide_get_[geometry/bios_chs_trans] in 'hw/ide/internal.h' 2023-02-27 22:29:02 +01:00
irq.h
loader-fit.h
loader.h hw: arm: Support direct boot for Linux/arm64 EFI zboot images 2023-03-06 14:08:12 +00:00
nmi.h
or-irq.h
pcmcia.h replace TABs with spaces 2023-03-20 12:43:50 +01:00
platform-bus.h
ptimer.h
qdev-clock.h
qdev-core.h bulk: Do not declare function prototypes using 'extern' keyword 2023-08-31 19:47:43 +02:00
qdev-dma.h
qdev-properties-system.h CPU topology: extend with s390 specifics 2023-10-20 07:16:53 +02:00
qdev-properties.h
register.h
registerfields.h
resettable.h
stream.h
sysbus.h
usb.h
vmstate-if.h