Bug 1046192

Summary: Can't set the timer base as localtime once localtime is used in the variable attribute.
Product: Red Hat Enterprise Linux 7 Reporter: hyao <hyao>
Component: libvirtAssignee: Michal Privoznik <mprivozn>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.0CC: codong, cwei, dyuan, jdenemar, jmiao, mprivozn, mzhan, rbalakri, tzheng
Target Milestone: rcKeywords: Upstream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libvirt-1.2.7-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1046193 (view as bug list) Environment:
Last Closed: 2015-03-05 07:29:18 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1046193    

Description hyao@redhat.com 2013-12-24 02:57:59 UTC
Description of problem:
Can't set the timer base as localtime once localtime is used in the variable attribute.


Version-Release number of selected component (if applicable):
# rpm -qa libvirt qemu-kvm
qemu-kvm-1.5.3-30.el7.x86_64
libvirt-1.1.1-16.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Add the following element in the healthy domian
<clock offset='variable' adjustment='3600' basis='localtime'/>

2.# virsh start rhel
error: Failed to start domain rhel
error: unsupported configuration: unsupported clock basis 'localtime'

3.
 3.1In libvirt.org, here's the description "Since 0.9.11 the basis attribute can be either 'utc' (default) or 'localtime'. "
 3.2# man qemu-kvm | grep localtime
       -rtc [base=utc|localtime|date][,clock=host|vm][,driftfix=none|slew]
           Specify base as "utc" or "localtime" to let the RTC start at the current UTC or local time, respectively.
 3.3 change the clock setting as <clock offset='localtime'/>, start the guest. The base is set as localtime in the qemu cml.
   # ps -aux | grep win| grep rtc
       ...-rtc base=localtime
Actual results:
Can't set the timer base as localtime once localtime is used in the variable attribute.

Expected results:
From step 3, localtime base should be supported.

Additional info:

Comment 2 Michal Privoznik 2014-02-05 14:33:58 UTC
Patch proposed upstream:

https://www.redhat.com/archives/libvir-list/2014-February/msg00250.html

Comment 3 Michal Privoznik 2014-02-06 07:31:25 UTC
I've just pushed patches upstream:

commit e505db0f6c26196287524eef214dd90f9c016cbb
Author:     Michal Privoznik <mprivozn>
AuthorDate: Wed Feb 5 15:18:46 2014 +0100
Commit:     Michal Privoznik <mprivozn>
CommitDate: Thu Feb 6 08:22:22 2014 +0100

    qemuxml2argvtest: Test localtime clock basis
    
    When trying to introduce a test for previous patch, I've
    noticed that the command line is constructed using current
    time. This won't work in our test suite (unless you guys
    wants to set a specific time prior to each test run :) ).
    Therefore we need to mock calls to time(2) to return the
    same value every time it's called.
    
    Signed-off-by: Michal Privoznik <mprivozn>

commit 51bea5df5d21093bb30e4883aff19f935e811725
Author:     Michal Privoznik <mprivozn>
AuthorDate: Wed Feb 5 15:30:11 2014 +0100
Commit:     Michal Privoznik <mprivozn>
CommitDate: Thu Feb 6 07:51:07 2014 +0100

    qemuBuildClockArgStr: Allow localtime clock basis
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1046192
    
    Commit b8bf79a, which adds clock='variable', forgets to check
    localtime basis in qemuBuildClockArgStr(). So that localtime
    basis could not be used.
    
    Reported-by: Jincheng Miao <jmiao>
    Signed-off-by: Michal Privoznik <mprivozn>

v1.2.1-121-ge505db0

Comment 7 Jincheng Miao 2014-08-18 09:58:54 UTC
According to https://bugzilla.redhat.com/show_bug.cgi?id=964177#c44 ,
The basis='localtime' works well in latest libvirt-1.2.7-1.el7.

So I change the status to VERIFIED.

Comment 9 errata-xmlrpc 2015-03-05 07:29:18 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2015-0323.html