RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 840939 - Incorrect/incomplete information in "Using the Real-Time Clock with Windows Vista, Windows Server 2008 and Windows 7 guests"
Summary: Incorrect/incomplete information in "Using the Real-Time Clock with Windows V...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Deadline: 2012-09-25
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: doc-Virtualization_Host_Configuration_and_Guest_Installation_Gui
Version: 6.3
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Tahlia Richardson
QA Contact: ecs-bugs
URL:
Whiteboard:
Depends On:
Blocks: 907269 907270
TreeView+ depends on / blocked
 
Reported: 2012-07-17 16:40 UTC by Marcelo Tosatti
Modified: 2018-12-01 18:56 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 907269 907270 (view as bug list)
Environment:
Last Closed: 2013-02-25 05:24:08 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Marcelo Tosatti 2012-07-17 16:40:56 UTC
Description of problem:

Guest timekeeping section recommends use of bcdedit to enable useplatformclock:

"The boot.ini file is no longer used from Windows Vista and newer. Windows Vista, Windows Server 2008 and Windows 7 use the Boot Configuration Data Editor (bcdedit.exe) to modify the Windows boot parameters.

...

C:\Windows\system32>bcdedit /set {default} USEPLATFORMCLOCK on
The operation completed successfully"

However, this information is incomplete and potentially incorrect (see (1) below), because  newer Windows versions check the HV bit in CPUID and avoid TSC in that case.

Vadim mentioned that W2K8R2/Win7/Win8 certainly do it, but was unsure about W2K8. Have to check with him.

So for Windows 2008(after confirmed with Vadim), 2008R2 and Windows 7, it should be something like:

"These versions of Windows do use TSC as a timesource if the hypervisor-present flag (bit 31 of ECX of CPUID leaf 0x1). RHEL6 KVM hypervisor enables this CPUID bit by default,
therefore bcdedit is not necessary".

(this is terrible english, please rewrite).

(1) http://social.technet.microsoft.com/Forums/en-US/winservergen/thread/e5cbfcc9-4dea-4076-9905-37b14a981bce/ contains a report containing

"According to the virtual machine vendor (It is RedHat KVM), the recommended workaround is to set the USEPLATFORMCLOCK BCD option to avoid using the TSC timer, and then use W32Time or another NTP client to automatically adjust the clock speed.
Unfortunately, when I try this on 2008 (NT 6.0.6002), I get the following error message:

<code>C:\Windows\system32>bcdedit /set {default} useplatformclock true
The element data type specified is not recognized, or does not apply to the
specified entry.
Run "bcdedit /?" for command line assistance.</code>

So what is the proper way to make Server 2008 (not R2) not use the TSC counter as a time source?"

Comment 2 Marcelo Tosatti 2012-07-17 16:48:09 UTC
(In reply to comment #0)

> (1)
> http://social.technet.microsoft.com/Forums/en-US/winservergen/thread/
> e5cbfcc9-4dea-4076-9905-37b14a981bce/ contains a report containing

Another one:

http://forum.proxmox.com/archive/index.php/t-5112.html

Comment 4 Marcelo Tosatti 2012-07-17 20:15:30 UTC
(In reply to comment #0)
> Description of problem:
> 
> Guest timekeeping section recommends use of bcdedit to enable
> useplatformclock:
> 
> "The boot.ini file is no longer used from Windows Vista and newer. Windows
> Vista, Windows Server 2008 and Windows 7 use the Boot Configuration Data
> Editor (bcdedit.exe) to modify the Windows boot parameters.
> 
> ...
> 
> C:\Windows\system32>bcdedit /set {default} USEPLATFORMCLOCK on
> The operation completed successfully"
> 
> However, this information is incomplete and potentially incorrect (see (1)
> below), because  newer Windows versions check the HV bit in CPUID and avoid
> TSC in that case.
> 
> Vadim mentioned that W2K8R2/Win7/Win8 certainly do it, but was unsure about
> W2K8. Have to check with him.
> 
> So for Windows 2008(after confirmed with Vadim), 2008R2 and Windows 7, it
> should be something like:
> 
> "These versions of Windows do use TSC as a timesource if the

Correction: These versions of Windows DO NOT use TSC as a timesource...

> hypervisor-present flag (bit 31 of ECX of CPUID leaf 0x1). RHEL6 KVM
> hypervisor enables this CPUID bit by default,
> therefore bcdedit is not necessary".

> (this is terrible english, please rewrite).

Not only the english, the structuring of the sentence is terrible.

Comment 5 Marcelo Tosatti 2012-08-20 19:15:28 UTC
The corrections to the present documentation would be:

1) Remove any mention to "Windows Vista" (it is not officially supported).
2) Remove "Windows 2008" from the recommendation to use BCDedit, and instead
mention:

"Windows 2008 does not use the TSC as a timesource if the hypervisor-present flag (bit 31 of ECX of CPUID leaf 0x1) is set. RHEL6 KVM hypervisor enables this CPUID bit by default".


Note You need to log in before you can comment on or make changes to this bug.