On 12/9/23 19:25, Paolo Bonzini wrote:
> However, the dependency of user-mode emulation on KVM is really an
> implementation detail of QEMU. It's very much baked into
linux-user and
> hard to remove, but I'm not sure it's a good idea to add more #ifdef
> CONFIG_USER_ONLY around KVM code.
Do you rather v3 then?
https://lore.kernel.org/qemu-devel/20230911142729.25548-1-philmd@xxxxxxxxxx/ <https://lore.kernel.org/qemu-devel/20230911142729.25548-1-philmd@xxxxxxxxxx/>
No, if we want a small patch it is better to replace kvm_enabled() with
CONFIG_KVM, and also follow Kevin's suggestion to make it fail at
compile time.
For target common code (shared between user/system), CONFIG_KVM is not
a replacement for !CONFIG_USER_ONLY, since it can be always enabled;
which is why we defer to runtime check with kvm_enabled().
Having stub prototypes was done because we expected the compiler to
remove the dead code.
Paolo