On 20/09/21 15:40, Marc Zyngier wrote:
At least not before we
declare the arm64 single kernel image policy to be obsolete.
--verbose please.:) I am sure you're right, but I don't understand
the link between the two.
To start making KVM/arm64 modular, you'd have to build it such as
there is no support for the nVHE hypervisor anymore. Which would mean
two different configs (one that can only work with VHE, and one for
the rest) and contradicts the current single kernel image policy.
Ah okay, I interpreted the policy as "it's possible to build a single
kernel image but it would be possible to build an image for a subset of
the features as well".
In that case you could have one config that can work either with or
without VHE (and supports y/n) and one config that can only work with
VHE (and supports y/m/n). The code to enter VHE EL2 would of course
always be builtin.
It is bad enough that we have to support 3 sets of page sizes.
Doubling the validation space for the sake of being able to unload KVM
seems a dubious prospect.
It's not even a configuration that matches kconfig very well, since it
does have a way to build something *only as a module*, but not a way to
build something only as built-in.
That said, if you had the possibility to unload/reload KVM, you'll
quickly become unable to live without it. :)
Paolo