Jump to page titleUNITED STATES
hp.com home products and services support and drivers solutions how to buy
» contact hp


more options
 
hp.com home
End of Jump to page title
HP Services software patches
Jump to content


» software & drivers
» ask Compaq
» reference library
» forums & communities
» support tools
» warranty information
» contact support
» parts
» give us feedback

associated links
» what's new
» contract access
» browse patch tree
» search patch tree
» join mailing list

patches by topic
» DOS
» OpenVMS
» Security
» Tru64 Unix
» Ultrix 32
» Windows
» Windows NT

connection tools
» nameserver lookup
» traceroute
» ping


Find Support Information and Customer Communities for Presario.
Content starts here
OpenVMS VMS731_PTHREAD-V0200 Alpha V7.3-1 PTHREAD ECO Summary
TITLE: OpenVMS VMS731_PTHREAD-V0200 Alpha V7.3-1 PTHREAD ECO Summary
 
NOTE:  An OpenVMS saveset or PCSI installation file is stored
       on the Internet in a self-expanding compressed file.
 
       For OpenVMS savesets, the name of the compressed saveset
       file will be kit_name.a-dcx_vaxexe for OpenVMS VAX or
       kit_name.a-dcx_axpexe for OpenVMS Alpha. Once the OpenVMS
       saveset is copied to your system, expand the compressed
       saveset by typing RUN kitname.dcx_vaxexe or kitname.dcx_alpexe.
 
       For PCSI files, once the PCSI file is copied to your system,
       rename the PCSI file to kitname.pcsi-dcx_axpexe or
       kitname.pcsi-dcx_vaxexe, then it can be expanded by typing
       RUN kitname.pcsi-dcx_axpexe or kitname.pcsi-dcx_vaxexe.  The
       resultant file will be the PCSI installation file which can be
       used to install the ECO.
 




New Kit Date:       09-SEP-2003
Modification Date:  NONE
Modification Type:  NEW KIT


 
1  KIT NAME:

     VMS731_PTHREAD-V0200


2  KIT DESCRIPTION:

     2.1  Installation Rating:


       INSTALL_3 : To be installed by customers experiencing the  
                   problems corrected.

     This 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)


     2.2  Reboot Requirement:

     No reboot is necessary after successful installation of the kit.



     2.3  Version(s) of OpenVMS to which this kit may be applied:

     OpenVMS Alpha V7.3-1


     2.4  New functionality or new hardware support provided:

     No.


3  KITS SUPERSEDED BY THIS KIT:


      -  VMS731_PTHREAD-V0100.



4  KIT DEPENDENCIES:

     4.1  The following remedial kit(s), or  later,  must  be  installed
          BEFORE installation of this, or any required kit:


      -  VMS731_PCSI-V0100

      -  VMS731_UPDATE-V0100


     4.2  In order to receive all the corrections listed  in  this  kit,
          the   following  remedial  kits,  or  later,  should  also  be
          installed:


      -  None.



5  FILES PATCHED OR REPLACED:


      o  [SYSLIB]PTHREAD$DBGSHR.EXE (new image)
          
         Image Identification Information
          
         image name: "PTHREAD$DBGSHR"
         image file identification:  "V3.19-070"
         image file build identification:  "X9TD-0060030004"
         link date/time: 21-AUG-2003 09:08:15.53
         linker identification:  "A11-50"

      o  [SYSLIB]PTHREAD$RTL.EXE (new image)
          
         Image Identification Information
          
         image name: "PTHREAD$RTL"
         image file identification:  "V3.19-070"
         image file build identification:  "X9TD-0060030004"
         link date/time: 21-AUG-2003 09:08:14.34
         linker identification:  "A11-50"



6  PROBLEMS ADDRESSED IN THIS KIT

     6.1  New problems addressed in the VMS731_PTHREAD-V0200 kit

          6.1.1  Threaded  application  may  fail  with  a  "lckMcsLock:
                 deadlock detected" bugcheck.

               6.1.1.1  Problem Description:

               A threaded application may fail with a "lckMcsLock:
               deadlock detected" bugcheck.

               Images Affected:  [SYSLIB]PTHREAD$DBGSHR.EXE

                                 [SYSLIB]PTHREAD$RTL.EXE


          6.1.2  

               6.1.2.1  Problem Description:

               During a debug session, in which a display of ready
               threads was requested, a non-existent virtual processor
               (VP) would cause the termination of the display with the
               following error:

                 Unable to execute pthread command "threads -r"

               Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                                [SYSLIB]PTHREAD$RTL.EXE



          6.1.3  SETAST  wait  was  incorrectly  displayed  as  "Bad  or
                 unknown kernel blocking type:  14".

               6.1.3.1  Problem Description:

               During a debug session, a SETAST wait was incorrectly
               displayed as "Bad or unknown kernel blocking type:  14".

               Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                                [SYSLIB]PTHREAD$RTL.EXE


          6.1.4  

               6.1.4.1  Problem Description:

               A thread unreference could be made on a bad pointer,
               resulting in an ACCVIO in dspDispatch().

               Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                                [SYSLIB]PTHREAD$RTL.EXE



          6.1.5  DECthreads process bugcheck schPickAvailableVp:   can't
                 find an available VP

               6.1.5.1  Problem Description:

               When stopping and starting CPUs in a system (or migrating
               CPUs between instances),a DECthreads process bugcheck may
               occur.  The bugcheck reports:

               schPickAvailableVp: can't find an available VP
                                   (0x01000000 tries).

               This CPU topology problem, only appears on multiprocessor
               systems (SMP or NUMA), in applications that are built to
               use upcalls and multiple kernel threads.

               Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                                [SYSLIB]PTHREAD$RTL.EXE


          6.1.6  Real-time policy threads do not get  reasonable  access
                 to CPU time

               6.1.6.1  Problem Description:

               Real-time policy threads in the application will not be
               given a reasonable access to CPU time, because the
               default thread is not sorted into the ordered ready queue
               properly after execution of an AST.

               This problem could occur in an application which has
               enabled upcalls.  To see the problem, the default thread
               must be set to one of the POSIX real-time thread
               scheduling policies, and the application must use a lot
               of user-mode ASTs.

               Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                                [SYSLIB]PTHREAD$RTL.EXE


          6.1.7  Threads library does not context switch properly

               6.1.7.1  Problem Description:

               Under certain timing conditions, when
               pthread_cond_sig_preempt_int_np is called from an
               application that has not enabled upcalls the threads
               library will not context switch properly, possibly
               putting the application in an infinite loop.

               Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                                [SYSLIB]PTHREAD$RTL.EXE



          6.1.8  Thread could be given a smaller  stack  than  what  was
                 expected

               6.1.8.1  Problem Description:

               A thread could be given a smaller stack than what was
               expected.  For this to happen, the application would
               first have to create a thread and explicitly request a
               stack of a size that is smaller than the default.  Then
               this thread would have to terminate.  Upon termination,
               the thread library thread-reclamation code would
               incorrectly cache the small stack.  Then if the
               application created a new thread and did not request a
               particular-size stack (thus implicitly asking for the
               default size), the threads library would end up re-using
               the cached small stack for that new thread.  Because the
               thread was given a smaller than expected stack, the
               application code that subsequently executed in that
               thread might overflow its stack, terminating the process.

               Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                                [SYSLIB]PTHREAD$RTL.EXE



7  PROBLEMS ADDRESSED IN VMS731_PTHREAD-V0100 KIT

     7.1  Decthreads Bugcheck - non-ready thread selected

          7.1.1  Problem Description:

          There is a window between the setting of the initial thread's
          state to ready, but before it has been inserted into the list
          of ready threads.  If the initial thread returns from
          servicing ASTs during this window and that return is to a
          point where the initial thread is waiting on a
          still-outstanding condition variable wait operation, the
          thread's state may be set to BLOCKED.  When the attempt is
          then made to insert the thread into the ready queue, a
          bugcheck results.  This problem may affect applications with
          upcalls enabled.

          This change removes calls to do undeferrals at the point in
          the code path when this window occurs.

          Bugcheck Extract:

          DECthreads bugcheck (version T3.19-044), terminating execution.
          % Reason:  selected a non-ready thread 1 (0x7BC94888), state 1


          Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                           [SYSLIB]PTHREAD$RTL.EXE



     7.2  "system-f-stkovf" stack overflow errors

          7.2.1  Problem Description:

          On multi-processor systems, the EXEC uses the Inner-Mode
          Semaphore (IMS) to serialize execution of many system
          services.  Upcalls are used to allow the threads library to
          execute one thread while another is blocked waiting for the
          IMS.  The services which the threads library uses to switch
          threads are themselves users of the IMS.  Under certain
          conditions, the result is recursion of IMS-free upcalls.  If
          the recursion persists long enough, a stack overflow can occur
          in a null thread which terminates the process.  This can only
          happen on a multiprocessor system when use of upcalls and
          multiple kernel threads are enabled.

          Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                           [SYSLIB]PTHREAD$RTL.EXE


     7.3  Process Hangs

          7.3.1  Problem Description:

          Under certain conditions, if an application AST arrives while
          the Java garbage collector is running a process hang can
          occur.  The problem is that the threads library uses the
          default thread to service the AST (when upcalls are enabled,
          which Java requires).  If garbage collection is happening at
          the same time, the default thread can be left in an incorrect
          state, causing a hang.  With this fix, AST delivery is now
          deferred while the garbage collector is running.

          Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE

                           [SYSLIB]PTHREAD$RTL.EXE



     7.4  Threaded application can hang on a system with multiple kernel
          threads enabled.

          7.4.1  Problem Description:

          A bug in the way DECthreads responded to topology changes (CPU
          stop or start) could have caused a threaded application to
          hang on a system with multiple kernel threads enabled.

          Images Affected: [SYSLIB]PTHREAD$DBGSHR.EXE
                           
			   [SYSLIB]PTHREAD$RTL.EXE



8  INSTALLATION INSTRUCTIONS:

     8.1  Installation Command

     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 VMS731_PTHREAD /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

     8.2  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

      -  Add the following qualifiers to the PRODUCT INSTALL command and
         add that command to the DCL procedure.

           /PROD=DEC/BASE=AXPVMS/VER=V2.0


      -  De-assign the logicals assigned

     For example, a sample command file to install the
     VMS731_PTHREAD-V0200 kit would be:

     $
     $ DEFINE/SYS NO_ASK$BACKUP TRUE
     $!
     $ PROD INSTALL VMS731_PTHREAD/PROD=DEC/BASE=AXPVMS/VER=V2.0
     $!
     $ DEASSIGN/SYS NO_ASK$BACKUP
     $!
     $ exit



9  COPYRIGHT AND DISCLAIMER:

     (C) Copyright 2003 Hewlett-Packard Development Company, L.P.

     Confidential computer software.  Valid license from HP  and/or  its
     subsidiaries 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.

     Neither HP  nor  any  of  its  subsidiaries  shall  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 HP 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.
Files on this server are as follows:
»dec-axpvms-vms731_pthread-v0200--4.README
»dec-axpvms-vms731_pthread-v0200--4.CHKSUM
»dec-axpvms-vms731_pthread-v0200--4.pcsi-dcx_axpexe
privacy statement using this site means you accept its terms