Date: Tue, 15 Mar 2011 17:21:34 -0400 From: Jung-uk Kim <jkim@FreeBSD.org> To: John Baldwin <jhb@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Bruce Evans <brde@optusnet.com.au> Subject: Re: svn commit: r219646 - head/sys/x86/isa Message-ID: <201103151721.42664.jkim@FreeBSD.org> In-Reply-To: <201103151551.54196.jhb@freebsd.org> References: <201103142205.p2EM5x6E012664@svn.freebsd.org> <201103151526.14264.jkim@FreeBSD.org> <201103151551.54196.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 15 March 2011 03:51 pm, John Baldwin wrote: > On Tuesday, March 15, 2011 3:26:11 pm Jung-uk Kim wrote: > > Now don't you think we should really kill delay by TSC? ;-) > > Delay by TSC fixed known deadlocks with the i8254 based DELAY() due > to the use of locks. Be careful that you don't re-introduce old > bugs. Yeah, that's perfectly understood. > Also, you can use a TSC for DELAY() in cases when it is not safe to > use it for the timecounter (if it is not in sync across cores, but > is used in a machine with invariant TSCs or where the user knows > they won't ever throttle it). Modern Intel CPUs all have invariant > TSCs that are more or less in sync across cores, and we should > certainly still use the TSC for DELAY() in that case. Even if they > aren't in sync (so we can't use it for the timecounter) we should > still use the TSC if they are invariant as it is far cheaper than > anything else. That, too, is well understood. You know I added tsc_is_invariant myself. :-) However, why do we need cheaper DELAY() when we trying to "delay" something with it? Jung-uk Kim
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201103151721.42664.jkim>