kern/187783: TSC frequency under virtualization environment is slightly off in overcommitted situations.

Alok Kataria akataria at vmware.com
Thu Mar 20 09:50:00 UTC 2014


>Number:         187783
>Category:       kern
>Synopsis:       TSC frequency under virtualization environment is slightly off in overcommitted situations.
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 20 09:50:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator:     Alok Kataria
>Release:        FreeBSD 8.3/8.4
>Organization:
VMware
>Environment:
>Description:
We have seen cases where the TSC frequency that kernel calibrates is slightly off from the actual TSC frequency when the FreeBSD kernel is running under a virtualized environment. This problem is amplified when the system is host is overcommitted. We have seen errors as high as 500ppm with the TSC frequency that gets calculated. 

To solve this problem, FreeBSD 9.x has an updated kernel which instead of calibrating the TSC frequency, queries the hypervisor for that information. 

It looks like FreeBSD 8.4 will be supported for another year still (June 2015), so to solve this problem I think we should backport that fix for the next 8.4 kernel update too. Since that change has been well tested on 9.x and later it should be pretty low risk IMO.

>How-To-Repeat:

>Fix:
The original fix, which needs to be cross ported can be found here.

http://lists.freebsd.org/pipermail/svn-src-head/2011-April/026998.html



>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list