mirror of https://gitee.com/openkylin/libvirt.git
qemu: Allow to specify pit timer tick policy=discard
Separate out the "policy=discard" into it's own specific qemu command line. We'll rename "kvm-pit-device" test case to be "kvm-pit-discard" since it has the syntax we'd be using. Signed-off-by: Maxim Nestratov <mnestratov@virtuozzo.com>
This commit is contained in:
parent
ef5c8bb412
commit
af78cb0486
|
@ -6261,9 +6261,15 @@ qemuBuildClockCommandLine(virCommandPtr cmd,
|
|||
return -1;
|
||||
}
|
||||
break;
|
||||
case VIR_DOMAIN_TIMER_TICKPOLICY_MERGE:
|
||||
case VIR_DOMAIN_TIMER_TICKPOLICY_DISCARD:
|
||||
/* no way to support these modes for pit in qemu */
|
||||
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM_PIT_TICK_POLICY))
|
||||
virCommandAddArgList(cmd, "-global",
|
||||
"kvm-pit.lost_tick_policy=discard", NULL);
|
||||
else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_NO_KVM_PIT))
|
||||
virCommandAddArg(cmd, "-no-kvm-pit-reinjection");
|
||||
break;
|
||||
case VIR_DOMAIN_TIMER_TICKPOLICY_MERGE:
|
||||
/* no way to support this mode for pit in qemu */
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||
_("unsupported pit tickpolicy '%s'"),
|
||||
virDomainTimerTickpolicyTypeToString(def->clock.timers[i]->tickpolicy));
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<boot dev='hd'/>
|
||||
</os>
|
||||
<clock offset='utc'>
|
||||
<timer name='pit' tickpolicy='delay'/>
|
||||
<timer name='pit' tickpolicy='discard'/>
|
||||
</clock>
|
||||
<on_poweroff>destroy</on_poweroff>
|
||||
<on_reboot>restart</on_reboot>
|
|
@ -2275,6 +2275,7 @@ mymain(void)
|
|||
qemuTestSetHostArch(driver.caps, VIR_ARCH_NONE);
|
||||
|
||||
DO_TEST("kvm-pit-delay", QEMU_CAPS_KVM_PIT_TICK_POLICY);
|
||||
DO_TEST("kvm-pit-discard", QEMU_CAPS_KVM_PIT_TICK_POLICY);
|
||||
|
||||
DO_TEST("panic", QEMU_CAPS_DEVICE_PANIC,
|
||||
QEMU_CAPS_NODEFCONFIG);
|
||||
|
|
Loading…
Reference in New Issue