On Tue, Mar 29, 2022 at 09:57:40AM +0000, Corvin Köhne wrote: > Hi Gerd, > > > There is FW_CFG_NB_CPUS + FW_CFG_MAX_CPUS. ovmf uses different names, > > see OvmfPkg/Include/IndustryStandard/QemuFwCfg.h > > > > PlatformPei for qemu uses QemuFwCfgItemSmpCpuCount aka FW_CFG_NB_CPUS, > > which is the number of cpus which are online. > > > > I think FW_CFG_MAX_CPUS is basically unused these days. It played a > > role back when seabios created the acpi tables for cpu hotplug as > > described in the comment above. In qemu 2.0 & newer the acpi tables are > > generated by qemu instead. The firmware just downloads them from fw_cfg > > and installs them for the OS, it doesn't need to know virtual machine > > configuration details any more. > > The FwCfgItem of this patch is used by bhyve to build the MADT. So, it's > similar to the use case of FW_CFG_MAX_CPUS. At the moment, I'm using > an additional bhyve specific FwCfgItem. I just want to ask, if it makes sense > to use FW_CFG_MAX_CPUS to avoid two items for the same purpose or to > keep it as is.
Given that FW_CFG_MAX_CPUS is unused on qemu these days it is unlikely that reusing it causes problems. IIRC the problems mentioned in the comment only matter with VMs having > 255 vCPUs because somewhere only one byte was used for the cpu / apic index. But I think I'd tend to keep the bhyve-specific behavior nevertheless, so you don't have to worry about qemu quirks. Or go the qemu route and generate the acpi tables on the host instead. When you generate the acpi tables in the guest firmware you always have the problem that you need to pass all the virtual machine configuration information needed to generate the tables to the firmware. The information needed changes over time when new features are added, which requires protocol updates, which in turn requires lockstep updates of hypervisor and firmware to deploy the new features ... HTH & take care, Gerd -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#88169): https://edk2.groups.io/g/devel/message/88169 Mute This Topic: https://groups.io/mt/90103180/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-