32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
import logging, os
|
|
from autotest_lib.client.common_lib import error
|
|
from autotest_lib.client.bin import utils
|
|
|
|
|
|
def run_clock_getres(test, params, env):
|
|
"""
|
|
Verify if guests using kvm-clock as the time source have a sane clock
|
|
resolution.
|
|
|
|
@param test: kvm test object.
|
|
@param params: Dictionary with test parameters.
|
|
@param env: Dictionary with the test environment.
|
|
"""
|
|
source_name = "test_clock_getres/test_clock_getres.c"
|
|
source_name = os.path.join(test.bindir, "deps", source_name)
|
|
dest_name = "/tmp/test_clock_getres.c"
|
|
bin_name = "/tmp/test_clock_getres"
|
|
|
|
if not os.path.isfile(source_name):
|
|
raise error.TestError("Could not find %s" % source_name)
|
|
|
|
vm = env.get_vm(params["main_vm"])
|
|
vm.verify_alive()
|
|
timeout = int(params.get("login_timeout", 360))
|
|
session = vm.wait_for_login(timeout=timeout)
|
|
|
|
vm.copy_files_to(source_name, dest_name)
|
|
session.cmd("gcc -lrt -o %s %s" % (bin_name, dest_name))
|
|
session.cmd(bin_name)
|
|
logging.info("PASS: Guest reported appropriate clock resolution")
|
|
logging.info("Guest's dmesg:\n%s", session.cmd_output("dmesg").strip())
|