Avi Kivity wrote:
Glauber de Oliveira Costa wrote:
I'm sending a first draft of my proposed cpu hotplug driver for
kvm/virtio
The first patch is the kernel module, while the second, the userspace
pci device.
The host boots with the maximum cpus it should ever use, through the
-smp parameter.
Due to real machine constraints (which qemu copies), i386 does not
allow for any addition
of cpus after boot, so this is the most general way.
I do however, include an "attempt_buffer" in the userspace part. It's
purpose is to
allow tools like virt-manager to set a max_cpus (-smp), and a desired
number of cpus
in their configuration files. (and AFAICT, there's is no easy way for
them to tell when the
backend driver is up and running)
Other than that, it should be pretty much straightforward.
Looking forward for your comments
I would much prefer to see cpu hotplug implemented via acpi. Such an
implementation would work on older kernels without change, and will also
work with other operating systems. It isn't a high-speed interface so
virtio doesn't buy us anything.
Linux appears to support it (CONFIG_ACPI_HOTPLUG_CPU) so all that's
needed is the host side support (likely qemu/bios only). Of course
hacking on acpi is fun, if you're the kind of person than enjoys dental
surgery.
Being acpi so that fun, how can it be that virtio don't by us _anything_ ?
_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/virtualization