From owner-freebsd-current@FreeBSD.ORG Wed May 6 10:13:07 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9AD95106564A for ; Wed, 6 May 2009 10:13:07 +0000 (UTC) (envelope-from peterjeremy@optushome.com.au) Received: from mail14.syd.optusnet.com.au (mail14.syd.optusnet.com.au [211.29.132.195]) by mx1.freebsd.org (Postfix) with ESMTP id 308728FC1C for ; Wed, 6 May 2009 10:13:06 +0000 (UTC) (envelope-from peterjeremy@optushome.com.au) Received: from server.vk2pj.dyndns.org (c122-106-216-167.belrs3.nsw.optusnet.com.au [122.106.216.167]) by mail14.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id n46AD22T012334 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Wed, 6 May 2009 20:13:03 +1000 X-Bogosity: Ham, spamicity=0.000000 Received: from server.vk2pj.dyndns.org (localhost.vk2pj.dyndns.org [127.0.0.1]) by server.vk2pj.dyndns.org (8.14.3/8.14.3) with ESMTP id n46AD26l019020 for ; Wed, 6 May 2009 20:13:02 +1000 (EST) (envelope-from peter@server.vk2pj.dyndns.org) Received: (from peter@localhost) by server.vk2pj.dyndns.org (8.14.3/8.14.3/Submit) id n46AD2eD019019 for freebsd-current@freebsd.org; Wed, 6 May 2009 20:13:02 +1000 (EST) (envelope-from peter) Date: Wed, 6 May 2009 20:13:02 +1000 From: Peter Jeremy To: freebsd-current@freebsd.org Message-ID: <20090506101301.GA17874@server.vk2pj.dyndns.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="ZPt4rx8FFjLCG7dd" Content-Disposition: inline X-PGP-Key: http://members.optusnet.com.au/peterjeremy/pubkey.asc User-Agent: Mutt/1.5.19 (2009-01-05) Subject: hardclock() sources X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 May 2009 10:13:07 -0000 --ZPt4rx8FFjLCG7dd Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Currently, FreeBSD uses the LAPIC timer to derive both hardclock() and statclock()/profclock() if it exists, otherwise it uses the 8254 and RTC. This presents a problem for using C3 - which stops the LAPIC clock. Some time ago, ariff@ produced a patch to work around a similar problem with C1E on some AMD Turion CPUs: http://people.freebsd.org/~ariff/misc/idlecpu_apic_5.diff A better solution would seem to be to use a HPET periodic timer. Is there a particular reason why code to (at least optionally) support HPET as the timer interrupt hasn't been written? Looking back through the archives, pkh@ has made disparaging remarks about the actual usefulness of HPET (as against the Intel documentation) but I can't find anything that actually talks about using it. Note that supporting HPET as a timer source would provide at least some of the infrastructure that will be needed for a future tickless kernel. --=20 Peter Jeremy --ZPt4rx8FFjLCG7dd Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.11 (FreeBSD) iEYEARECAAYFAkoBYq0ACgkQ/opHv/APuIfLngCfbgRt+478eQO1CaAtCPltykir W2gAoI8Tga5coWvjU5X8wR7wDoRhy9x6 =rfRx -----END PGP SIGNATURE----- --ZPt4rx8FFjLCG7dd--