Return to aix CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / ntp / html / hints |
1.1 ! misho 1: Problem with recent ANSI compilers ! 2: ! 3: On some systems, including AIX, the compiler quits on the ntp_refclock.c ! 4: file when processing the refclock_report() routine. The problem, which ! 5: is eithre a feature or a bug, has to do with an unwanted promotion of ! 6: the u_char argument to an int and a failure of the compiler to recognize ! 7: the preceding prototype. A workaround is to use ANSI syntax to delare ! 8: the arguments. Since ANSI compilers are not universally available, this ! 9: syntax can't be used in the stock distribution. ! 10: ! 11: (Message # 60: 2884 bytes, New) ! 12: Date: Sat, 19 Aug 1995 13:20:50 -0400 ! 13: From: "R. Bernstein" <rocky@panix.com> ! 14: Newsgroups: comp.protocols.time.ntp ! 15: to: mills@udel.edu ! 16: return-receipt-to: rocky@panix.com ! 17: Subject: time and AIX 3.2.5 raw tty bug ! 18: ! 19: This posting isn't strictly about NTP, any program that may stop the ! 20: clock or set the clock backwards is subject to the AIX 3.2.5 bug. ! 21: ! 22: On AIX 3.2.5, there is a bug in the tty driver for a raw device which ! 23: may crash the box under certain conditions: basically a read() on a ! 24: raw tty in effect, a character was read but not as many as specified ! 25: by VMIN when a read timeout occurred. VTIME specifies the timeout. See ! 26: the AIX manual page on termios.h or that include file. for Information ! 27: on VMIN (or MIN) VTIME (or TIME). ! 28: ! 29: A remedy other than to not use raw tty's is to apply patch U435110. ! 30: ! 31: Details of the problem report follow. ! 32: ! 33: > ABSTRACT: ! 34: > IX43779: TRAP IN PSX_TIMEO ! 35: > ! 36: > ORIGINATING DETAILS: ! 37: > Stacktrace shows: ! 38: > IAR: 01460214 posixdd:psx_timeo + 8bf4: ti 4,r12,0x0 ! 39: > *LR: 014601a0 posixdd:psx_timeo + 8b80 ! 40: > 00212c60: 014604f4 posixdd:psx_timer + 8ed4 ! 41: > 00212cc0: 0144b74c ttydd:tty_do_offlevel + 4284 ! 42: > 00212d20: 000216fc .i_offlevel + 8c ! 43: > 00212d70: 00021d78 .i_softint + c8 ! 44: > 00001004: 00008714 .finish_interrupt + 80 ! 45: > ! 46: > RESPONDER SUMMARY: ! 47: > AIX asserted in psx_timeo(). Reason for the assert was that ! 48: > the current time was behind psx_ctime. Since this state ! 49: > can occur when the current time is changed after a character ! 50: > is received but before the VTIME interbyte timer pops, we ! 51: > should not assert on this. ! 52: > ! 53: > RESPONDER CONCLUSION: ! 54: > Removed the requirement that current time > psx_ctime by ! 55: > adding a new L_ntimersub macro that is used instead of the ! 56: > ntimersub macro in time.h. Also added a test for (current ! 57: > time - psx_ctime) being negative, in that case we do not ! 58: > adjust the new timeout. ! 59: > ! 60: > Reported to Correct a PTF in Error: NO ! 61: > Reported as a Highly pervasive problem: NO ! 62: > ! 63: > PE Apar?: NoPE ! 64: > Hiper Apar?: NoHiper ! 65: > Status: CLOSED PER ! 66: > Component Name: AIX V3 FOR RS/6 ! 67: > Version: 320 ! 68: > Component ID: 575603001 ! 69: > Submitted: 94/05/03 ! 70: > Closed: 94/05/05 ! 71: > ChangeTeam: TX2527 ! 72: > ! 73: > APAR FIXED BY: U431696 U432151 U432844 U432870 U432979 ! 74: > U433049 U433081 U433459 U433876 U433906 U434598 U434453 ! 75: > U434672 U434737 U435110 ! 76: