Re: [edk2-devel] CPU hotplug using SMM with QEMU+OVMF
On 08/23/19 17:25, Kinney, Michael D wrote:
Hi Jiewen,"without a stack" looks very risky to me. Even if we manage to implement
the guest code initially, we'll be trapped without a stack, should we
ever need to add more complex stuff there.
For this OVMF use case, is any CPU init requiredI expressed a preference for that too: "I wish we could simply wake the
new CPU [...] with an SMI".
From Paolo's list of steps are steps (8a) and (8b)See again my message linked above -- just after the quoted sentence, I
wrote, "IOW, if we could excise steps 07b, 08a, 08b".
But, I obviously defer to Paolo and Igor on that.
(I do believe we have a dilemma here. In QEMU, we probably prefer to
emulate physical hardware as faithfully as possible. However, we do not
have Cache-As-RAM (nor do we intend to, IIUC). Does that justify other
divergences from physical hardware too, such as waking just by virtue of
Can the SMI monarch use the LocalI agree this would be a huge help.
It would be simpler if we can guarantee that onlyI don't know if the QEMU monitor command in question can guarantee this
serialization. I think such a request/response pattern is generally
implementable between QEMU and guest code.
But, AIUI, the "device-add" monitor command is quite generic, and used
for hot-plugging a number of other (non-CPU) device models. I'm unsure
if the pattern in question can be squeezed into "device-add". (It's not
a dedicated command for CPU hotplug.)
... Apologies that I didn't add much information to the thread, just
now. I'd like to keep the discussion going.