Re: [Qemu-devel] [PATCH 11/12] kvm: x86: Pass KVMState to kvm_arch_get_supported_cpuid

Jan Kiszka
2011-06-09T17:41:18Z

On 2011-06-09 19:33, Eduardo Habkost wrote:
> On Wed, Jun 08, 2011 at 04:11:05PM +0200, Jan Kiszka wrote:
>> kvm_arch_get_supported_cpuid checks for global cpuid restrictions, it
>> does not require any CPUState reference. Changing its interface allows
>> to call it before any VCPU is initialized.
>
> I'm wondering if it wouldn't be simpler to keep the existing interface
> but just initialize CPUState->kvm_state earlier (today it is initialized
> only on kvm_init_vcpu(), although the kvm_state global is initialized
> much earlier).

If there was more need for a slit up, I would agree. But I do not see it.

>
> Even with this new KVMState-based interface, code that needs to use
> these functions before kvm_init_vcpu() (e.g.
> check_features_against_host()) will have to use the 'kvm_state' global
> (and I would like to avoid that).

That is a different topic that needs to be resolved for other use cases
as well (e.g. for kvm devices). In many cases you should be able to find
a way to pass kvm_state from functions that already holds a reference.
Is that not true for your use case?

Jan

--
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux