Re: kern.timecounter.smp_tsc_adjust

看板FB_hackers作者時間11年前 (2014/06/05 03:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
On 04.06.2014 20:50, Jung-uk Kim wrote: > On 2014-06-04 13:32:13 -0400, Chris Torek wrote: >>> In any case, at least one, and maybe two, routines need their >>> types changed (and maybe the TSC_READ macro as well). Is it OK >>> to just assume the upper 32 bits are in sync? >> >> For whatever it may be worth, the following patch (to change >> everything to 64 bits) is boot-tested and no longer crashes the >> system that did crash with the unpatched version. It also >> successfully synchronized TSCs at least once (Intel based board >> with the "invariant TSC" bit set, 40 CPUs). >> >> Chris >> >> x86/tsc: fix SMP TSC adjustment code >> >> On SMP systems, if kern.timecounter.smp_tsc is set, the kernel >> attempts to determine whether the TSCs on the processors are >> sufficiently in-sync to be used for time counting. If not, and >> kern.timecounter.smp_tsc_adjust is set, we then attempt to adjust >> all the TSCs. >> >> The adjustment code assumed we kept a full 64-bit value for each >> TSC, but the data-gathering and comparison code used 32-bit values. >> As a result, if the timecounters were out of sync, the adjustment >> code could crash (depending on the number of CPUs). >> >> This converts everything to full 64-bit values. > ... > > It was done on head almost two years ago: > > http://svnweb.freebsd.org/changeset/base/239133 > > I guess mav forgot to MFC r239133 before r250772 (CC'ed): > > http://svnweb.freebsd.org/changeset/base/250772 Merged to stable/9. Thanks for the reminder. -- Alexander Motin _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
文章代碼(AID): #1JZspl_O (FB_hackers)
文章代碼(AID): #1JZspl_O (FB_hackers)