Solaris 10 on x86-64 Systems May Lose Track of Time on DST Change

Zeus Technology would like to make its customers aware of the following Sun Microsystems advisory:
http://sunsolve.sun.com/search/document.do?assetkey=1-26-101763-1

  1. Impact

    When the Daylight Savings Time (DST) changeover happens on a Solaris x86 system running a 64 bit kernel, and the change is toward an offset of Greenwich Mean Time (GMT), the kernel will get confused and time appears to be reset to 1970. The BIOS will generally show a time in 2070. Timestamps will be incorrect and 32 bit applications accessing "/proc" and other virtual filesystems cease to work. The system will require a reboot and the time must be adjusted manually.

  2. Contributing Factors

    This issue can occur in the following release:

    1. x86 Platform
    2. Solaris 10 without patch 118844-05

    Please note:

    1. Solaris 10 on the SPARC platform is not impacted by this issue. Solaris 7, 8 and 9 are not impacted by this issue.
    2. This issue only affects systems on the x64/EM64T Platform running a 64 bit kernel.

    The error occurs when the "/usr/sbin/rtc -c" command is run from root's crontab(1) shortly after a DST change on a system which uses a negative timezone offset (i.e., systems running with a time east of Greenwich, including the UK, when switching to summer time).

  3. Symptoms

    Should the described issue occur, the time appears to be reset back to 1970 and certain time/date related commands as well as programs using "/proc" no longer function. This includes all programs which are shipped as 32 and 64 bit binaries and which are executed through "/usr/lib/isaexec" (e.g., ps(1), ptools).

  4. Workaround

    To work around the described issue, set all operating systems on the x64 system to use the Coordinated Universal Time (UTC) timezone (offset 0 from GMT) for Solaris, by using the following rtc(1M) command:

    # /usr/sbin/rtc -c -z UTC; svcadm restart ntp

    Note: If not running ntp, set the date by hand.

    The side effect of using this workaround is that the BIOS clock runs in UTC from then on and it will not be reset twice a year. If Solaris is the only OS running on the system, then this change has no side effect.

  5. Resolution

    This issue is addressed in the following release:

    x86 Platform

    * Solaris 10 with patch 118844-05 or later

Copyright 2000-2006 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, CA 95054 U.S.A. All rights reserved.

Why is this advisory considered important?

At the forefront of all our products is a commitment to security. ZXTM has been designed to prevent replay attacks as a security measure. Messages that suddenly appear to come from a significantly different date/time are deliberately ignored.

Unfortunately, a side effect of this is that an unrecoverable fail-over will be initiated because ZXTM will be deliberately ignoring health communication messages from other cluster members because of the disparity of the date stamp.

Most importantly, this bug directly affects the underlying OS's ability to function correctly. All 32 and 64bit binaries which are called through /usr/lib/isaexec will fail to operate correctly. This affects ZXTM. The only way to recover your OS will be to reboot it, then manually altering the time to ensure correct operation.

Zeus strongly advises all customers affected by this critical bug to consult with their vendor and apply the relevant patch(es).

Chris Buckley [Zeus Support] 27 March 2006  Permalink  
Leave a comment ...
Your email address will not be displayed.
Your URL will be displayed.
This public messageboard is not a forum for technical support. To report technical support problems, please contact our dedicated Support team using the instructions at the bottom of this page.
Options:
 
(Line breaks become <br />)
(Set cookies for name, email & url)
Download Free ZXTM Desktop Edition

Recent Articles

Other Resources



www.zeus.com