On 08/30/13 13:54, Lundberg, Johannes wrote: > Still got the same behaviour after applying the patch... > > Johannes Lundberg > BRILLIANTSERVICE CO., LTD. <http://www.brilliantservice.co.jp> I've seen something similar with my mac, that the boot menu counter is not always counting stable. I think this problem is inside the following function, if you say that the code is stuck inside pause(): sys/x86/isa/clock.c:DELAY() Maybe you can try this patch instead. Just apply it by hand: === sys/x86/isa/clock.c ================================================================== --- sys/x86/isa/clock.c (revision 254832) +++ sys/x86/isa/clock.c (local) _at__at_ -262,6 +262,7 _at__at_ timecounter_get_t *func; uint64_t end, freq, now; u_int last, mask, u; + int overflow = 0; tc = timecounter; freq = atomic_load_acq_64(&tsc_freq); _at__at_ -281,6 +282,11 _at__at_ sched_pin(); last = func(tc) & mask; do { + if (--overflow == 0) { + printf("DELAY overflow\n"); + break; + } + cpu_spinwait(); u = func(tc) & mask; if (u < last) _at__at_ -304,6 +310,7 _at__at_ DELAY(int n) { int delta, prev_tick, tick, ticks_left; + int overflow = 0; #ifdef DELAYDEBUG int getit_calls = 1; int n1; _at__at_ -365,6 +372,10 _at__at_ / 1000000; while (ticks_left > 0) { + if (--overflow == 0) { + printf("DELAY overflow\n"); + break; + } #ifdef KDB if (kdb_active) { #ifdef PC98 --HPSReceived on Fri Aug 30 2013 - 10:25:02 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:41 UTC