[x750e] calcru: runtime went backwards
-
Since I've done another fresh full-installation of v2.2 (HDD on x7503), time to time I started getting a lots of these on the console:
calcru: runtime went backwards from 1013 usec to 833 usec for pid 20 (bufdaemon) calcru: runtime went backwards from 24 usec to 20 usec for pid 19 (idlepoll) calcru: runtime went backwards from 768 usec to 672 usec for pid 7 (pagedaemon) calcru: runtime went backwards from 57 usec to 42 usec for pid 6 (sctp_iterator) calcru: runtime went backwards from 12269 usec to 10867 usec for pid 5 (pf purge) calcru: runtime went backwards from 36557 usec to 27518 usec for pid 16 (usb) calcru: runtime went backwards from 42299 usec to 39429 usec for pid 4 (cam) calcru: runtime went backwards from 5592 usec to 4517 usec for pid 15 (rand_harvestq) calcru: runtime went backwards from 42548 usec to 31909 usec for pid 14 (geom) calcru: runtime went backwards from 33 usec to 25 usec for pid 13 (ng_queue)
A quick search, turns out because of either a) syncing with a incorrect/overloaded NTP server, b) CPU SpeedStep going wrong or c) FreeBSD chose a wrong clock. I'm using pfsense time server, which is working just fine on my other FireBox and dmesg reports these about the Timecounter:
[2.2.2-RELEASE][root@wg550.home]/root: dmesg|grep Timecounter Timecounter "i8254" frequency 1193182 Hz quality 0 Timecounter "ACPI-fast" frequency 3579545 Hz quality 900 Timecounters tick every 1.000 msec Timecounter "TSC-low" frequency 1133397936 Hz quality 800
any idea what I'm keep seeing this? My another x550e (with the stock CUP) runs just fine. Best!
-
What CPU are you using?
What timecounter are you using? Run:sysctl -a | grep timecounter
Steve
-
Thanks Steve!
[2.2.2-RELEASE][root@wg550.home]/root: sysctl -a | grep timecounter kern.timecounter.tc.i8254.mask: 65535 kern.timecounter.tc.i8254.counter: 64103 kern.timecounter.tc.i8254.frequency: 1193182 kern.timecounter.tc.i8254.quality: 0 kern.timecounter.tc.ACPI-fast.mask: 16777215 kern.timecounter.tc.ACPI-fast.counter: 14991400 kern.timecounter.tc.ACPI-fast.frequency: 3579545 kern.timecounter.tc.ACPI-fast.quality: 900 kern.timecounter.tc.TSC-low.mask: 4294967295 kern.timecounter.tc.TSC-low.counter: 828615263 kern.timecounter.tc.TSC-low.frequency: 500000000 kern.timecounter.tc.TSC-low.quality: 800 kern.timecounter.stepwarnings: 0 kern.timecounter.alloweddeviation: 5 kern.timecounter.hardware: i8254 kern.timecounter.choice: TSC-low(800) ACPI-fast(900) i8254(0) dummy(-1000000) kern.timecounter.tick: 1 kern.timecounter.fast_gettime: 1 kern.timecounter.invariant_tsc: 0 kern.timecounter.smp_tsc: 0 kern.timecounter.smp_tsc_adjust: 0 kern.timecounter.tsc_shift: 1
Is TSC-low the issue here?
It's actually a 1.7GHz Pentium M (735 SL7EP) and started at the same time I upgraded to 8.1 BIOS. There are two other odd things: fanctrl stops working just after it starts (looks like to me SpeedStep issue); it start working just fine if I restart the box and during the POST, BIOS says it's a 2.2GHz processor:
Phoenix - AwardBIOS v6.00PG, An Energy Star Ally Copyright (C) 1984-2003, Phoenix Technologies, LTD (E17HDD) MOD V0.81 console on com1 115200\. Stephenw10 12/4/2014 Main Processor : Intel(R) Pentium(R) M processor 2.26GHz(133x17.0) Memory Testing : 1040384K OK + 8M shared memory
Let me know if any other info you need. Best!
-
Those numbers in brackets indicate the timer quality so ACPI-fast is the best choice there. It should select the best one by default so I assume you have manually chosen i8254 with a system tunable as decribed in the wiki?
Using the 8.1 bios the ACPI timer becomes available so that should no longer be necessary. Try removing that and it should then default to ACPI-fast in kern.timecounter.hardware. Try running with that.You do seem to have overclocked the CPU somehow which is interesting in itself! Looking at the numbers it looks like you've set a 533MHz FSB instead of 400MHz which that CPU is supposed to run. Have you moved both sets of jumpers? Did you make any BIOS settings? I did look into over/under clocking but never found anything that worked. Please note your jumper and BIOS settings for anyone who wants to overclock.
I've only tried one 533MHz CPU and that's the standard 2GHz chip from the Peak-e. It showed exactly the same thing when I enabled powerd.
Steve
-
Yes, I did put i8254 manually; now removed. But something still not right, ACPI-fast still not being selected:
[root@wg550 ~]# sysctl kern.timecounter.hardware kern.timecounter.hardware: ACPI-fast [root@wg550 ~]# sysctl kern.timecounter.choice kern.timecounter.choice: TSC-low(800) ACPI-fast(900) i8254(0) dummy(-1000000)
What's still going wrong?
Now here are the few things I can remember: I never over-clocked the CPU by myself and only enabled ACPI in the BIOS over the default settings. By jumpers if you mean the dip-switches then I did set both of them this time and I think since then those runtime went backwards errors started.
I'll post couple of pics of the settings in the morning. Best!
-
That is running ACPI-fast, the hardware sysctl shows you what is in use. The choice sysctl shows you what you can choose from.
It's likely giving problems because it's overclocked. Check the DIP switches (both sets) are set correctly.Steve
-
Whilst checking the dip switches, noticed that when fully booted, pfSqnse seems to see the correct CPU but with incorrect frequency:
Another thing, do I still need these in the loader.conf.local?
hint.p4tcc.0.disabled=1 hint.acpi_throttle.0.disabled=1
-
dip-switch-1 (closer to the CPU):
dip-switch-2 (away from the CPU):
There are my dip-switch settings at the moment. I followed the Dothan configuration.
-
It looks like you have those DIP switches set to the opposite of their correct settings. The white square on the diagram indicates the switch position.
Fort example: https://forum.pfsense.org/index.php?topic=20095.msg509526#msg509526The diagram is confusing but that's based on the original positions for the Banias setting.
The CPU speed reported on the dashboard is based on what the CPU is reporting whihc is turn is based on the fact that it thinks it has a 400MHz FSB.
Steve
-
yes, exactly! I completely misunderstood the diagram.
As you said, it was completely opposite to what it's supposed to me. Once corrected all started working as expected.