Patchwork kvmclock: Always register type

login
register
mail settings
Submitter Andreas Färber
Date Feb. 17, 2012, 1:32 a.m.
Message ID <1329442328-13318-1-git-send-email-afaerber@suse.de>
Download mbox | patch
Permalink /patch/141721/
State New
Headers show

Comments

Andreas Färber - Feb. 17, 2012, 1:32 a.m.
Currently, the "kvmclock" type is only registered when kvm_enabled().

This breaks when moving type registration to before command line
parsing (so that QOM types can be used for CPU and machine).

Since the QOM classes are lazy-initialized anyway and kvmclock_create()
has another kvm_enabled() check, simply drop the KVM check in
kvmclock_register_types().

kvm-i8259, kvm-apic and kvm-ioapic do not suffer from such a check.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
---
 hw/kvm/clock.c |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)
Jan Kiszka - Feb. 17, 2012, 9:33 a.m.
On 2012-02-17 02:32, Andreas Färber wrote:
> Currently, the "kvmclock" type is only registered when kvm_enabled().
> 
> This breaks when moving type registration to before command line
> parsing (so that QOM types can be used for CPU and machine).
> 
> Since the QOM classes are lazy-initialized anyway and kvmclock_create()
> has another kvm_enabled() check, simply drop the KVM check in
> kvmclock_register_types().
> 
> kvm-i8259, kvm-apic and kvm-ioapic do not suffer from such a check.
> 
> Signed-off-by: Andreas Färber <afaerber@suse.de>
> Cc: Jan Kiszka <jan.kiszka@siemens.com>
> Cc: Marcelo Tosatti <mtosatti@redhat.com>
> ---
>  hw/kvm/clock.c |    2 --
>  1 files changed, 0 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/kvm/clock.c b/hw/kvm/clock.c
> index 2157340..446bd62 100644
> --- a/hw/kvm/clock.c
> +++ b/hw/kvm/clock.c
> @@ -121,9 +121,7 @@ void kvmclock_create(void)
>  
>  static void kvmclock_register_types(void)
>  {
> -    if (kvm_enabled()) {
>      type_register_static(&kvmclock_info);
> -    }
>  }
>  
>  type_init(kvmclock_register_types)

Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com>

uq/master stuff or do other changes need it earlier?
Andreas Färber - Feb. 17, 2012, 12:19 p.m.
Am 17.02.2012 10:33, schrieb Jan Kiszka:
> On 2012-02-17 02:32, Andreas Färber wrote:
>> Currently, the "kvmclock" type is only registered when kvm_enabled().
>>
>> This breaks when moving type registration to before command line
>> parsing (so that QOM types can be used for CPU and machine).
>>
>> Since the QOM classes are lazy-initialized anyway and kvmclock_create()
>> has another kvm_enabled() check, simply drop the KVM check in
>> kvmclock_register_types().
>>
>> kvm-i8259, kvm-apic and kvm-ioapic do not suffer from such a check.
>>
>> Signed-off-by: Andreas Färber <afaerber@suse.de>
>> Cc: Jan Kiszka <jan.kiszka@siemens.com>
>> Cc: Marcelo Tosatti <mtosatti@redhat.com>
>> ---
>>  hw/kvm/clock.c |    2 --
>>  1 files changed, 0 insertions(+), 2 deletions(-)
>>
>> diff --git a/hw/kvm/clock.c b/hw/kvm/clock.c
>> index 2157340..446bd62 100644
>> --- a/hw/kvm/clock.c
>> +++ b/hw/kvm/clock.c
>> @@ -121,9 +121,7 @@ void kvmclock_create(void)
>>  
>>  static void kvmclock_register_types(void)
>>  {
>> -    if (kvm_enabled()) {
>>      type_register_static(&kvmclock_info);
>> -    }
>>  }
>>  
>>  type_init(kvmclock_register_types)
> 
> Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com>
> 
> uq/master stuff or do other changes need it earlier?

Yes, uq/master will be fine. Thanks.

I'll prepend it to my qom-cpu branch for now, but since that's getting
rather large for my taste (50+), I'm pushing independent bits out early.

Andreas

Patch

diff --git a/hw/kvm/clock.c b/hw/kvm/clock.c
index 2157340..446bd62 100644
--- a/hw/kvm/clock.c
+++ b/hw/kvm/clock.c
@@ -121,9 +121,7 @@  void kvmclock_create(void)
 
 static void kvmclock_register_types(void)
 {
-    if (kvm_enabled()) {
     type_register_static(&kvmclock_info);
-    }
 }
 
 type_init(kvmclock_register_types)