Windows DatabaseebooksStatistical Information

LLE10076 : Hangcheck value past margin! This message is recorded muliple times in your messages log file

Symptom:

Your log is full of Hangcheck value past margin messages

Cause:

Your kernel is configured with the hangcheck timer and your system thinks it looses time or hangs for a certain time

Solution:

Well, if your think this message is terrible I do not blame you. It just doesn't look nice in your logs. This message is defined in the hangcheck-time.c file. Under normal circumstances this message can be ignored. Hangcheck is made for rebooting your computer when a certain timer has been passed. Long before this timer is reached, it records this message in the log. (/var/log/messages)

file: hangcheck-timer.c

You will find this in the beginning of the file

 * The hangcheck-timer driver uses the TSC to catch delays that
 * jiffies does not notice.  A timer is set.  When the timer fires, it
 * checks whether it was delayed and if that delay exceeds a given
 * margin of error.  The hangcheck_tick module paramter takes the timer
 * duration in seconds.  The hangcheck_margin parameter defines the
 * margin of error, in seconds.  The defaults are 60 seconds for the
 * timer and 180 seconds for the margin of error.  IOW, a timer is set
 * for 60 seconds.  When the timer fires, the callback checks the
 * actual duration that the timer waited.  If the duration exceeds the
 * alloted time and margin (here 60 + 180, or 240 seconds), the machine
 * is restarted.  A healthy machine will have the duration match the
 * expected timeout very closely.


and here you find the part that is responsible for the message:


    if (tsc_diff > hangcheck_tsc_margin) {
        if (hangcheck_dump_tasks) {
            printk(KERN_CRIT "Hangcheck: Task state:\n");
            handle_sysrq('t', NULL, NULL, NULL);
        }
        if (hangcheck_reboot) {
            printk(KERN_CRIT "Hangcheck: hangcheck is restarting the machine.\n");
            machine_restart(NULL);
        } else {
            printk(KERN_CRIT "Hangcheck: hangcheck value past margin!\n");
        }
    }

Disclaimer:

The information provided in this document is intended for your information only. Lubby makes no claims to the validity of this information. Use of this information is at own risk!
Copyright © 2004-2011 Lubby (V3.0.10 Aug 2011)
Sponsored by Keskon.
Statistical information by Google Analytics