From owner-svn-src-all@FreeBSD.ORG Fri Jan 30 14:58:32 2015 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 04522885; Fri, 30 Jan 2015 14:58:32 +0000 (UTC) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CE0196CC; Fri, 30 Jan 2015 14:58:31 +0000 (UTC) Received: from new-host-3.home (pool-173-54-116-245.nwrknj.fios.verizon.net [173.54.116.245]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id C7804B9B8; Fri, 30 Jan 2015 09:58:30 -0500 (EST) Message-ID: <54CB9C1A.5060602@FreeBSD.org> Date: Fri, 30 Jan 2015 09:58:34 -0500 From: John Baldwin User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Ryan Stone Subject: Re: svn commit: r277900 - head/sys/x86/x86 References: <201501292041.t0TKfhAJ029429@svn.freebsd.org> <8728880.CZu0UL854D@ralph.baldwin.cx> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Fri, 30 Jan 2015 09:58:30 -0500 (EST) Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Jan 2015 14:58:32 -0000 On 1/29/15 10:51 PM, Ryan Stone wrote: > On Thu, Jan 29, 2015 at 3:45 PM, John Baldwin wrote: >> Also, note that we always use the TSC as the cpu ticker, even if it is not the >> timecounter. Thus, if C2+ is enabled on the systems, the kernel idle threads >> will have an artificially low runtime since their idle time is not properly >> accounted for. This does not affect any other threads as only the idle >> threads "run" while the CPU is in C2+ with the TSC effectively paused. The >> new default means that the idle threads will now have the proper runtime, >> however. > > However in a VM environment this means that runtimes for all threads > can be very wrong (regardless of whether we enter C2 or lower or not). > I have a coworker looking at using kvmclock in preference to TSC for > the cpu ticker when the kvmclock is available. I think that is orthogonal to older Core 2 CPUs which the above mail was about. :) However, yes, that sounds sensible. You might want to talk to bryanv@. He has a branch in projects (projects/paravirt I think?) that provides a framework for hypervisor "drivers" that would be a good place to plug this into. -- John Baldwin