ECO NUMBER: VMS721H1_SYS-V0600 PRODUCT: OpenVMS Alpha OPERATING SYSTEM V7.2-1H1 UPDATE PRODUCT: OpenVMS Alpha OPERATING SYSTEM V7.2-1H1 COVER LETTER 1 KIT NAME: VMS721H1_SYS-V0600 2 KITS SUPERSEDED BY THIS KIT: VMS721H1_SYS-V0500 3 KIT DEPENDENCIES: 3.1 The following remedial kit(s), or later, must be installed BEFORE installation of this, or any required kit: VMS721H1_UPDATE-V0500 3.2 In order to receive all the corrections listed in this kit, the following remedial kits, or later, should also be installed: None. 4 KIT DESCRIPTION: 4.1 Version(s) of OpenVMS to which this kit may be applied: OpenVMS Alpha V7.2-1H1 4.2 Files patched or replaced: o [SYS$LDR]EXCEPTION.EXE (new image) o [SYS$LDR]EXCEPTION_MON.EXE (new image) o [SYS$LDR]IO_ROUTINES.EXE (new image) o [SYS$LDR]IO_ROUTINES_MON.EXE (new image) o [SYS$LDR]LOGICAL_NAMES.EXE (new image) o [SYS$LDR]PROCESS_MANAGEMENT.EXE (new image) o [SYS$LDR]PROCESS_MANAGEMENT_MON.EXE (new image) o [SYS$LDR]SECURITY.EXE (new image) -- COVER LETTER -- Page 2 12 September 2002 o [SYS$LDR]SECURITY_MON.EXE (new image) o [SYS$LDR]SYS$VM.EXE (new image) o [SYS$LDR]SYSGETSYI.EXE (new image) o [SYS$LDR]SYSLDR_DYN.EXE (new image) o [SYS$LDR]SYSTEM_PRIMITIVES.EXE (new image) o [SYS$LDR]SYSTEM_PRIMITIVES_MIN.EXE (new image) o [SYS$LDR]EXCEPTION.STB (new file) o [SYS$LDR]EXCEPTION_MON.STB (new file) o [SYS$LDR]IO_ROUTINES.STB (new file) o [SYS$LDR]IO_ROUTINES_MON.STB (new file) o [SYS$LDR]LOGICAL_NAMES.STB (new file) o [SYS$LDR]PROCESS_MANAGEMENT.STB (new file) o [SYS$LDR]PROCESS_MANAGEMENT_MON.STB (new file) o [SYS$LDR]SECURITY.STB (new file) o [SYS$LDR]SECURITY_MON.STB (new file) o [SYS$LDR]SYS$VM.STB (new file) o [SYS$LDR]SYSTEM_PRIMITIVES.STB (new file) o [SYS$LDR]SYSTEM_PRIMITIVES_MIN.STB (new file) 5 PROBLEMS ADDRESSED IN VMS721H1_SYS-V0600 KIT o F$GETSYI('RAD_MAX_RADS',node) fails to get the information from the specified node. Instead, the command returns information from the current node the command is executing on. Note that with OpenVMS versions before V7.3-1, RAD_MAX_RADS will return 1 if there is no RAD support, and will return 8 no matter how many QBBs are physically present. This limitation was documented in the V7.2-1H1R New Features and Release Notes, June 2000, section 3.5.6.1. Images Affected: - [SYS$LDR]SYSGETSYI.EXE -- COVER LETTER -- Page 3 12 September 2002 o The system can crash with a FILCNTNONZ bugcheck. CrashDump Summary ----------------- Bugcheck Type: FILCNTNONZ, Open file count nonzero after process rundown Current Image: Failing PC: FFFFFFFF.D269A360 PROCESS_MANAGEMENT+3C360 Failing PS: 18000000.00000000 Module: PROCESS_MANAGEMENT (Link Date/Time: 18-OCT-2000 07:01:30.44) Offset: 0003C360 Images Affected: - [SYS$LDR]IO_ROUTINES.EXE - [SYS$LDR]IO_ROUTINES_MON.EXE o The system can crash with an INCONSTATE, Inconsistent I/O data base bugcheck at EXE$FP_ASSIGN_PORT_C+0021C. Crashdump Summary Information: ------------------------------ Bugcheck Type: INCONSTATE, Inconsistent I/O data base Current Process: OPS_05B3 Current Image: $1$DUA42:[SYS3.SYSCOMMON.] [SYSEXE]SMPUTIL.EXE Failing PC: FFFFFFFF.800BC83C EXE$FP_ASSIGN_PORT_C+0021C Failing PS: 20000000.00000803 Module: IO_ROUTINES (Link Date/Time: 22-MAR-2001 00:58:18.18) Offset: 0000883C Failing Instruction: EXE$FP_ASSIGN_PORT_C+0021C: BUGCHK Images Affected: - [SYS$LDR]SYSTEM_PRIMITIVES.EXE - [SYS$LDR]SYSTEM_PRIMITIVES_MIN.EXE - [SYS$LDR]SYSTEM_PRIMITIVES.STB - [SYS$LDR]SYSTEM_PRIMITIVES_MIN.EXE o The system can crash with a CWLNMERR bugcheck. The failing PC is in routine TRNLNM, offset 7AC in PSECT EXEC$HI_USE_PAGEABLE_CODE. -- COVER LETTER -- Page 4 12 September 2002 Images Affected: - [SYS$LDR]LOGICAL_NAMES.EXE o A program using C signals can be aborted with the condition code set to the C signal value. Images Affected: - [SYS$LDR]EXCEPTION.EXE - [SYS$LDR]EXCEPTION_MON.EXE o The system can crash with an SSRVEXCEPT, Unexpected system bugcheck at EXE$IO_PERFORM_C+00650 Crashdump Summary Information: ------------------------------ Bugcheck Type: SSRVEXCEPT, Unexpected system service exception Current Process: ORA_P10111B1238 Current Image: $1$DGA92:[A_ORACLE.ORACLEV7336.RDBMS]SRV.EXE Failing PC: FFFFFFFF.800CBEB0 EXE$IO_PERFORM_C+00650 Failing PS: 30000000.00000203 Module: IO_ROUTINES (Link Date/Time: 5-NOV-2001 11:49:25.01) Offset: 00017EB0 Failing Instruction: EXE$IO_PERFORM_C+00650: LDQ R18,#X0108(R18)\ Images Affected: - [SYS$LDR]IO_ROUTINES.EXE - [SYS$LDR]IO_ROUTINES_MON.EXE o A user-writen device driver using an IRPE for a second buffer can result in an SSREXCEPT bugcheck in MMG_STD$IOLOCK_BUF if it must fault in the affected page. Section 2.2.1 of the OpenVMS Alpha Guide to Upgrading Privileged Code Applications describes how device drivers can lock down multiple I/O buffers using IRPEs with the EXE_STD$READLOCK, WRITELOCK, or MODIFYLOCK routines. Unfortunately, when an IRPE was passed in and the buffer required a page fault this code used the IRP$PS_FDT_CONTEXT offset on the IRPE, which is only valid on an IRP. -- COVER LETTER -- Page 5 12 September 2002 The correction for this problem is to delay the use of the IRP$PS_FDT_CONTEXT cell until after the original IRP pointer has been restored by a call to the error call back routine. Images Affected: - [SYS$LDR]IO_ROUTINES.EXE - [SYS$LDR]IO_ROUTINES_MON.EXE - [SYS$LDR]IO_ROUTINES.STB - [SYS$LDR]IO_ROUTINES_MON.STB o If there is a lot of cluster-wide $GETJPI activity, a process may hang waiting for the completion of an RMS $FLUSH operation. The I/O request resulting from this may wait forever because the IOSB is not filled in. Images Affected: - [SYS$LDR]PROCESS_MANAGEMENT.EXE - [SYS$LDR]PROCESS_MANAGEMENT_MON.EXE o A system that supports NUMA and has RAD_SUPPORT enabled, can crash with an INVEXCEPTN bugcheck when the swapper is the current process. The failing PC is at or around MMG$WRTMFYPAG_C+006E4. Images Affected: - [SYS$LDR]SYS$VM.EXE o Under some circumstances lookup of a device may fail. If the system doing the lookup has a zero allocation class specified, and attempts to access an MSCP-served disk by using the NODE$DUA form, the access may fail because the device will not be found. This can be seen in the following SET VOLUME/REBUILD DCL example (SHOW DEVICE fields have been edited for space reasons). $ SHOW DEVICE $8$DUA10 Device Device Error Volume Name Status Count Label $8$DUA10: (UTRAMP) Mounted alloc 0 TEST1 $ WRITE SYS$OUTPUT F$GETDVI("$8$DUA10:","EXISTS") TRUE $ -- COVER LETTER -- Page 6 12 September 2002 $ WRITE SYS$OUTPUT F$GETDVI("$8$DUA10:","ROOTDEVNAM") _UTRAMP$DUA10: $ $ WRITE SYS$OUTPUT F$GETDVI("$8$DUA10:","DEVNAM") _UTRAMP$DUA10: $ $ WRITE SYS$OUTPUT F$GETDVI("_utramp$dua10:","EXISTS") FALSE $ $ SET VOLUME/REBUILD $8$DUA10: %SET-E-NOTSET, error modifying _UTRAMP$DUA10: -RMS-F-DEV, error in device name or inappropriate device type for operation %SET-E-NOTSET, error modifying _UTRAMP$DUA10: -SYSTEM-W-NOSUCHDEV, no such device available A lookup via the runtime library function LIB$FIND_IMAGE_SYMBOL will also show the problem. Images Affected: - [SYS$LDR]IO_ROUTINES.EXE - [SYS$LDR]IO_ROUTINES_MON.EXE o PWRK$STREAMSOS_V7.EXE is a big file, about 1760 blocks in size. If this file has become very fragmented after installation then Advanced server startup may fail with a SS$_BADPARAM error. This can occur if PWRK$STREAMSOS_V7.EXE is heavily fragmented and has multiple file headers (the following example has been modified for space reasons): $ @sys$startup:pwrk$startup The file server will use DECnet, TCP/IP. Advanced Server mail notification will use DECnet. %SYSTEM-F-BADPARAM, bad parameter value %TRACE-F-TRACEBACK, symbolic stack dump follows image module routine line PWRK$LOADSTREAMS_V7 LOAD main 7822 rel PC abs PC 000000000000213C 000000000003213C image module routine line PWRK$LOADSTREAMS_V7 LOAD __main 0 rel PC abs PC 0000000000000070 0000000000030070 image module routine line 0 rel PC abs PC FFFFFFFF802653B4 FFFFFFFF802653B4 -- COVER LETTER -- Page 7 12 September 2002 Images Affected: - [SYS$LDR]SYSLDR_DYN.EXE 6 PROBLEMS ADDRESSED IN VMS721H1_SYS-V0500 KIT o The system can crash with a INVSECURESTATE at NSA$DEREFERENCE_RIGHTS_CHAIN_C+0008C bugcheck. DOUBLEDEALO crashes are also possible. Crash Dump Summary Information ------------------------------ Bugcheck Type: INVSECURESTATE, Invalid state detected by SECURITY subsystem Current Image: DSA20:[SYS0.SYSCOMMON.] [SYSEXE]OAFC$SERVER.EXE;1 Failing PC: FFFFFFFF.8019798C NSA$DEREFERENCE_RIGHTS_CHAIN_C+0008C Failing PS: 30000000.00000203 Module: SECURITY_MON (Link Date/Time: 17-OCT-2001 01:01:12.57) Offset: 0000B98C Images Affected: - [SYS$LDR]SECURITY.EXE - [SYS$LDR]SECURITY_MON.EXE - [SYS$LDR]SECURITY.STB - [SYS$LDR]SECURITY_MON.STB o The system can crash with a "RNLSTAKNV, Kernel stack not valid" bugcheck during process or image rundown. The crash is caused by invalid data in the CTL$GQ_REMOTE_FULLNAME size field. Images Affected: - [SYS$LDR]PROCESS_MANAGEMENT.EXE - [SYS$LDR]PROCESS_MANAGEMENT_MON.EXE - [SYS$LDR]PROCESS_MANAGEMENT.STB - [SYS$LDR]PROCESS_MANAGEMENT_MON.STB -- COVER LETTER -- Page 8 12 September 2002 o Doing I/O on a multipath device, when the current path is a secondary, results in an increase in the UCB$L_OPCNT in the primary as well as the current path UCB. Although the UCB$L_OPCNT in the secondary grows faster than in the primary, the UCB$L_OPCNT in the primary should not be changing (except, at most by once per second for polling.) This is easily observed when doing a DIR/SIZE on the system disk. A number of customers and third-parties rely on these counters to be accurate in their performance and capacity planning tools. Images Affected: - SYS$LDR]IO_ROUTINES.EXE - SYS$LDR]IO_ROUTINES_MON.EXE - SYS$LDR]IO_ROUTINES.STB - SYS$LDR]IO_ROUTINES_MON.STB 7 KIT INSTALLATION RATING: The following kit installation rating, based upon current CLD information, is provided to serve as a guide to which customers should apply this remedial kit. (Reference attached Disclaimer of Warranty and Limitation of Liability Statement) INSTALLATION RATING: INSTALL_1 : To be installed by all customers. 8 INSTALLATION INSTRUCTIONS: Install this kit with the POLYCENTER Software installation utility by logging into the SYSTEM account, and typing the following at the DCL prompt: PRODUCT INSTALL VMS721H1_SYS /SOURCE=[location of Kit] The kit location may be a tape drive, CD, or a disk directory that contains the kit. Additional help on installing PCSI kits can be found by typing HELP PRODUCT INSTALL at the system prompt This kit requires a system reboot. Compaq strongly recommends that a reboot is performed immediately after kit installation to avoid system instability -- COVER LETTER -- Page 9 12 September 2002 If you have other nodes in your OpenVMS cluster, they must also be rebooted in order to make use of the new image(s). If it is not possible or convenient to reboot the entire cluster at this time, a rolling re-boot may be performed. 8.1 Special Installation Instructions: 8.1.1 Scripting of Answers to Installation Questions During installation, this kit will ask and require user response to several questions. If you wish to automate the installation of this kit and avoid having to provide responses to these questions, you must create a DCL command procedure that includes the following definitions and commands: - $ DEFINE/SYS NO_ASK$BACKUP TRUE - $ DEFINE/SYS NO_ASK$REBOOT TRUE - Add the following qualifiers to the PRODUCT INSTALL command and add that command to the DCL procedure. /PROD=DEC/BASE=AXPVMS/VER=V6.0 - De-assign the logicals assigned For example, a sample command file to install the VMS721H1_SYS-V0600 kit would be: $ $ DEFINE/SYS NO_ASK$BACKUP TRUE $ DEFINE/SYS NO_ASK$BACKUP TRUE $! $ PROD INSTALL VMS721H1_SYS/PROD=DEC/BASE=AXPVMS/VER=V6.0 $! $ DEASSIGN/SYS NO_ASK$BACKUP $ DEASSIGN/SYS NO_ASK$REBOOT $! $ exit Copyright (c) Compaq Computer Company, 2002 All Rights Reserved. Unpublished rights reserved under the copyright laws of the United States. COMPAQ, the COMPAQ logo, VAX, Alpha, VMS, and OpenVMS are registered in the U.S. Patent and Trademark Office. All other product names mentioned herein may be trademarks of their respective companies. Confidential computer software. Valid license from COMPAQ are required for possession, use, or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor's standard commercial license. -- COVER LETTER -- Page 10 12 September 2002 COMPAQ shall not be liable for technical or editorial errors or omissions contained herein. The information in this document is provided as is without warranty of any kind and is subject to change without notice. The warranties for COMPAQ products are set forth in the express limited warranty statements accompanying such products. Nothing herein should be construed as constituting an additional warranty. DISCLAIMER OF WARRANTY AND LIMITATION OF LIABILITY THIS PATCH IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED TO THE EXTENT PERMITTED BY APPLICABLE LAW. IN NO EVENT WILL COMPAQ BE LIABLE FOR ANY LOST REVENUE OR PROFIT, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, WITH RESPECT TO ANY PATCH MADE AVAILABLE HERE OR TO THE USE OF SUCH PATCH.