Forum Stats

  • 3,827,086 Users
  • 2,260,740 Discussions


mcelog-error in mail from hourly cron job using Unbreakable Kernel

elygre Member Posts: 7
edited Mar 23, 2011 7:52PM in Oracle Linux
After installing OEL 5.5 + Unbreakable Kernel, I get the following error message sent from the hourly cron:


mcelog: warning: record length longer than expected. Consider update.

Some relevant info:

[[email protected] ~]# uname -a
Linux XXXXX 2.6.32-100.20.1.el5 #1 SMP Fri Oct 1 16:37:36 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
[[email protected] ~]# rpm -q mcelog
[[email protected] ~]# up2date --show-channels
[[email protected] ~]# up2date -u -f
All packages are currently up to date

A similar bug report was filed against some Fedora-version last year, with updates through this year. This might be relevant and/or helpful, or not:



  • Dude!
    Dude! Member Posts: 22,829 Black Diamond
    edited Oct 20, 2010 9:11AM
    I get the same error message by just typing mcelog at the command shell, but I'm running in Virtualbox.

    MCE is nothing but feature of AMD / Intel 64 bit systems which is used to detect an unrecoverable hardware problem. Program such mcelog decodes machine check events (hardware errors) on x86-64 machines running a 64-bit Linux kernel. It should be run regularly as a cron job on any x86-64 Linux system. This is useful for predicting server hardware failure before actual server crash.

    On my OL 5.5 systems mcelog is version: mcelog-0.9pre-1.30.el5.x86_64
  • Sergio-Oracle
    Sergio-Oracle Member Posts: 2,660 Employee

    Looks like you have network support at a minimum. If you have Basic or Premier Linux support, please report this issue via My Oracle Support. If you don't, I recommend you file a bug via

  • elygre
    elygre Member Posts: 7
    We got basic linux support, I think. even though our ULN CSI expired while I was goofing around on a sailboat in the pacific :-) That's being worked on, though.

    Either way, I'll go with bugzilla, which I'd wager is faster, and probably closer to home for whoever needs to actually fix this:
  • Dude!
    Dude! Member Posts: 22,829 Black Diamond
    edited Mar 23, 2011 7:52PM
    I'm not sure if this is the real fix, but....

    Contents of mcelog.cron:
    # /usr/sbin/mcelog ignorenodev filter >> /var/log/mcelog
    mcelog: warning: record length longer than expected. Consider update.

    Perhaps the mcelog utility is not in sync with the current kernel headers. After downloading the source and recompiling the error disappears:

    # ./mcelog ignorenodev filter >> /var/log/mcelog
    no error

    Here is what I did:
    # wget
    # mkdir -p /usr/src/redhat/SOURCES
    # rpm -Uvh mcelog-0.9pre-1.30.el5.src.rpm
    # cd /usr/src/redhat/SOURCES/
    # tar zxvf mcelog-0.9pre.tar.gz
    # cd /usr/src/redhat/SOURCES/mcelog-0.9pre
    # make
    # ./mcelog
    # mv /usr/sbin/mcelog /usr/sbin/mcelog.orig
    # ln -sf /usr/src/redhat/SOURCES/mcelog-0.9pre/mcelog /usr/sbin/mcelog
    or if you trust it:
    # cp /usr/src/redhat/SOURCES/mcelog-0.9pre/mcelog /usr/sbin/mcelog
  • elygre
    elygre Member Posts: 7
    That sounds like a reasonable fix to me :-)

    For myself, I'll leave it as is, though. I don't want to compile OS binaries, and will just wait until a fixed binary comes along.
  • 849715
    849715 Member Posts: 1
    This is a known bug in the underlying kernel. Upstream support for mcelog has dried up for years and a new method may be coming out. It appears the "immediate" fix in January 10 was never implemented--

This discussion has been closed.