Skip to content

Commit

Permalink
hw/i386: Remove unuseful kvmclock_create() stub
Browse files Browse the repository at this point in the history
We shouldn't call kvmclock_create() when KVM is not available
or disabled:
 - check for kvm_enabled() before calling it
 - assert KVM is enabled once called
Since the call is elided when KVM is not available, we can
remove the stub (it is never compiled).

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230620083228.88796-2-philmd@linaro.org>
  • Loading branch information
philmd committed Aug 31, 2023
1 parent f832461 commit b797c98
Show file tree
Hide file tree
Showing 5 changed files with 10 additions and 14 deletions.
4 changes: 3 additions & 1 deletion hw/i386/kvm/clock.c
Original file line number Diff line number Diff line change
Expand Up @@ -332,8 +332,10 @@ void kvmclock_create(bool create_always)
{
X86CPU *cpu = X86_CPU(first_cpu);

if (!kvm_enabled() || !kvm_has_adjust_clock())
assert(kvm_enabled());
if (!kvm_has_adjust_clock()) {
return;
}

if (create_always ||
cpu->env.features[FEAT_KVM] & ((1ULL << KVM_FEATURE_CLOCKSOURCE) |
Expand Down
4 changes: 3 additions & 1 deletion hw/i386/microvm.c
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,9 @@ static void microvm_devices_init(MicrovmMachineState *mms)
x86ms->ioapic2 = ioapic_init_secondary(gsi_state);
}

kvmclock_create(true);
if (kvm_enabled()) {
kvmclock_create(true);
}

mms->virtio_irq_base = 5;
mms->virtio_num_transports = 8;
Expand Down
2 changes: 1 addition & 1 deletion hw/i386/pc_piix.c
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ static void pc_init1(MachineState *machine,
pc_machine_init_sgx_epc(pcms);
x86_cpus_init(x86ms, pcmc->default_cpu_version);

if (pcmc->kvmclock_enabled) {
if (kvm_enabled() && pcmc->kvmclock_enabled) {
kvmclock_create(pcmc->kvmclock_create_always);
}

Expand Down
4 changes: 3 additions & 1 deletion hw/i386/pc_q35.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,9 @@ static void pc_q35_init(MachineState *machine)
pc_machine_init_sgx_epc(pcms);
x86_cpus_init(x86ms, pcmc->default_cpu_version);

kvmclock_create(pcmc->kvmclock_create_always);
if (kvm_enabled()) {
kvmclock_create(pcmc->kvmclock_create_always);
}

/* pci enabled */
if (pcmc->pci_enabled) {
Expand Down
10 changes: 0 additions & 10 deletions include/hw/kvm/clock.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,6 @@
#ifndef HW_KVM_CLOCK_H
#define HW_KVM_CLOCK_H

#ifdef CONFIG_KVM

void kvmclock_create(bool create_always);

#else /* CONFIG_KVM */

static inline void kvmclock_create(bool create_always)
{
}

#endif /* !CONFIG_KVM */

#endif

0 comments on commit b797c98

Please sign in to comment.