3

I am having trouble using HPET on my physical machine. It is not available, even though I have enabled it in my bios, forced it in grub, and triple checked my kernel to include HPET in its compilation.

  • Motherboard: Supermicro X9DRW
  • Processor: 2x Intel(R) Xeon(R) CPU E5-2640
  • SAS Controller: LSI Logic / Symbios Logic SAS2004 PCI-Express Fusion-MPT SAS-2 [Spitfire] (rev 03)
  • Distro: CentOS 6.3
  • Kernel: 3.4.21-rt32 #2 SMP PREEMPT RT x86_64 GNU/Linux
  • Grub: hpet=force clocksource=hpet

.config file:

CONFIG_HPET_TIMER=y 
CONFIG_HPET_EMULATE_RTC=y 
CONFIG_HPET=y

dmesg | grep hpet:

Command line: ro root=/dev/mapper/vg_xxxx-lv_root rd_NO_LUKS rd_LVM_LV=vg_xxxx/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_xxxx/lv_swap rd_NO_DM LANG=en_US.UTF-8 rhgb quiet panic=5 hpet=force clocksource=hpet
Kernel command line: ro root=/dev/mapper/vg_xxxx-lv_root rd_NO_LUKS rd_LVM_LV=vg_xxxx/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_xxxx/lv_swap rd_NO_DM LANG=en_US.UTF-8 rhgb quiet panic=5 hpet=force clocksource=hpet

cat /sys/devices/system/clocksource/clocksource0/current_clocksource:

tsc

cat /sys/devices/system/clocksource/clocksource0/available_clocksource:

tsc jiffies

What is even more confusing, is that I have about a dozen other machines that utilize the same kernel .config, and can use HPET fine. I fear it is a hardware issue, but would appreciate any advice or help with getting HPET available.

Thanks in advance!

6
  • Hardware issue (grrr... Supermicro)... check your BIOS settings... Are they consistent across the servers? Are those servers the same model/build? Is this a trading system? How did you build the realtime kernel?
    – ewwhite
    Dec 21, 2012 at 4:05
  • I checked my BIOS and have HPET enabled; and it is consistent across the servers. This is the only machine that is having trouble. The servers differ slightly in hardware -- what do you mean by trading system? In regards to the kernel, I patched using the latest RT 3.4.x patch (matched with the same kernel version). I copied my .config from another working machine, verified with menuconfig, then make all, make modules_install, make install (all with -j flags).
    – squareone
    Dec 21, 2012 at 4:11
  • I asked about trading (e.g. Financial Trading) because that's the most common application for a realtime kernel setup and the timer modifications you're making.
    – ewwhite
    Dec 21, 2012 at 4:13
  • Ah, it is a game server.
    – squareone
    Dec 21, 2012 at 4:15
  • So what is in dmesg? Dec 21, 2012 at 18:15

1 Answer 1

1

Additional info would be useful

  • dmesg|grep -i hpet - for some HPET related information.
  • dmidecode - BIOS version part.

Also upgrading BIOS should probably help.

PS. Why not TSC? It's faster and if you have both constant_tsc and nonstop_tsc in /proc/cpuinfo it's definitely the best choice.

4
  • # dmesg|grep -i hpet Command line: ro root=/dev/mapper/vg_volm-lv_root rd_NO_LUKS rd_LVM_LV=vg_volm/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_volm/lv_swap rd_NO_DM LANG=en_US.UTF-8 rhgb quiet panic=5 hpet=force clocksource=hpet Kernel command line: ro root=/dev/mapper/vg_volm-lv_root rd_NO_LUKS rd_LVM_LV=vg_volm/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_volm/lv_swap rd_NO_DM LANG=en_US.UTF-8 rhgb quiet panic=5 hpet=force clocksource=hpet
    – squareone
    Dec 22, 2012 at 22:12
  • dmidecode BIOS Information Vendor: American Megatrends Inc. Version: 1.0a Release Date: 04/26/2012
    – squareone
    Dec 22, 2012 at 22:18
  • Try upgrading BIOS to 1.0b Dec 23, 2012 at 10:29
  • I ended up resolving this by reflashing the BIOS and reinstalling CentOS 6.3. Thanks for everyone's help -- this was definitely a thorn.
    – squareone
    Jan 8, 2013 at 23:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .