Skip to content

Conversation

@askervin
Copy link
Collaborator

- topology2qemuopts converts CXL structures to Qemu PCIe devices
  and memory backend objects.

- Add functions to e2e script API for listing, hotplugging
  and hotremoving CXL devices.

- Move hardcoded Qemu accelerator from Vagrantfile template to
  topology2qemuopts that already generates Qemu machine parameters.
  There is no functional change: keep using kvm. However, this enables
  switching back and forth between "accel=kvm" with "accel=tcg" in
  generated Vagrantfile more cleanly than between "-enable-kvm" and
  "". While "accel=tcg" is needed to actually use CXL memory in vm, it
  is most likely faster to do test setup first with kvm, and finally
  reboot to tcg once the vm has been fully prepared for such a test.

- Use explicitly specified PCIe root port for Qemu disk in
  Vagrantfile to avoid errors when CXL PCIe devices are added.

- Fix a bug in SEPARATED_OUTPUT_VARS=1 output, where an empty
  deviceparams or objectparams list caused extra ", ," in output
  leading to errors in Vagrantfile.

Stacked on top of #587.

cpus-present enables creating virtual machines with different
numbers of possible and enabled CPUs. CPUs that are possible
but not enabled can be hot-plugged when the virtual machine is
running.

q35 machine, irq split and x2apic are required for hot-plugging CPUs
with id >= 256. In case of "separated_output_vars", they are now
printed in place of former "CPU:" parameter. This moves Qemu "-cpu"
parameter management to topology2qemuopts while it used to be
hardcoded "-cpu host" in Vagrantfile.in. Finally, new "SMP:" parameter
printing is added for "-smp" parameters.

Signed-off-by: Antti Kervinen <antti.kervinen@intel.com>
Signed-off-by: Antti Kervinen <antti.kervinen@intel.com>
Signed-off-by: Antti Kervinen <antti.kervinen@intel.com>
- topology2qemuopts converts CXL structures to Qemu PCIe devices
  and memory backend objects.

- Add functions to e2e script API for listing, hotplugging
  and hotremoving CXL devices.

- Move hardcoded Qemu accelerator from Vagrantfile template to
  topology2qemuopts that already generates Qemu machine parameters.
  There is no functional change: keep using kvm. However, this enables
  switching back and forth between "accel=kvm" with "accel=tcg" in
  generated Vagrantfile more cleanly than between "-enable-kvm" and
  "". While "accel=tcg" is needed to actually use CXL memory in vm, it
  is most likely faster to do test setup first with kvm, and finally
  reboot to tcg once the vm has been fully prepared for such a test.

- Use explicitly specified PCIe root port for Qemu disk in
  Vagrantfile to avoid errors when CXL PCIe devices are added.

- Fix a bug in SEPARATED_OUTPUT_VARS=1 output, where an empty
  deviceparams or objectparams list caused extra ", ," in output
  leading to errors in Vagrantfile.

Signed-off-by: Antti Kervinen <antti.kervinen@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant