Patch Name: PHKL_21431 Patch Description: s700 10.20 ptrace problems for child of process under debug Creation Date: 00/07/31 Post Date: 00/08/02 Warning: 00/12/14 - This Non-Critical Warning has been issued by HP. - PHKL_21431 introduces a defect on multi-processor (MP) systems with symptoms similar to the defect it fixes. Debuggers that try to work with a child process will continue to fail on multi-processor systems after PHKL_21431 is installed. The patch works correctly on uni-processor (UP) systems. - The problem also exists with the s800 patch PHKL_21432. - As multi-processor systems will still experience a defect with PHKL_21431 installed and since installing the patch requires a system reboot, PHKL_21431 is being recalled to avoid unnecessary installation and system reboots. - Since the problem introduced by PHKL_21431 is similar to, and as likely to occur as, the problem PHKL_21431 fixes, it is not necessary to remove the patch from multi-processor systems. A multi-processor system is in a similar state regardless of whether or not the patch is installed. - Please note the problem introduced by PHKL_21431 only affects multi-processor systems. It is appropriate to continue to install PHKL_21431 on uni-processor systems. - The problem will be addressed in a future patch. - PHKL_21431 is included in the following Support Plus General Release Patch Bundle: December 2000: XSW700GR1020,r=B.10.20.51.2 Hardware Platforms - OS Releases: s700: 10.20 Products: N/A Filesets: OS-Core.CORE-KRN Automatic Reboot?: Yes Status: General Superseded With Warnings Critical: No Path Name: /hp-ux_patches/s700/10.X/PHKL_21431 Symptoms: PHKL_21431: (SR: 5003352484 CR: JAGaa11895) Debuggers attempting to work with a child process of a process already under debug fail. The failure is reported at the moment the child process to be debugged is forked. The following is an example of the error that DDE may report: "kernel internal error: Process events (fork, vfork, exit, exec) will not be reported." Defect Description: PHKL_21431: (SR: 5003352484 CR: JAGaa11895) When a process under debug forks out a new child process, the debugger, if asked to do so, will also attempt to fork a new debugger for the child process. Since the PT_ATTACH for the child process occurs when the child process has not yet even run, certain variables have not yet been set and additional debugger commands fail to work properly. Resolution: In order to get the debugged child process to go through the proper path and initialize the apropriate variables, this process is now forced to go from TSSTOP to TSRUN. To accomplish this correctly, extra synchronization in the PT_ATTACH code executed by the debugger was added. This extra synchronization allows the debugged child process to complete its initialization before the debugger is allowed to continue. SR: 5003352484 Patch Files: /usr/conf/lib/libhp-ux.a(pm_ptrace.o) what(1) Output: /usr/conf/lib/libhp-ux.a(pm_ptrace.o): pm_ptrace.c $Date: 2000/07/31 11:50:36 $ $Revision: 1.6.98.26 $ PATCH_10.20 (PHKL_21431) cksum(1) Output: 3512284477 16448 /usr/conf/lib/libhp-ux.a(pm_ptrace.o) Patch Conflicts: None Patch Dependencies: s700: 10.20: PHKL_16750 Hardware Dependencies: None Other Dependencies: None Supersedes: None Equivalent Patches: PHKL_21432: s800: 10.20 Patch Package Size: 70 KBytes Installation Instructions: Please review all instructions and the Hewlett-Packard SupportLine User Guide or your Hewlett-Packard support terms and conditions for precautions, scope of license, restrictions, and, limitation of liability and warranties, before installing this patch. ------------------------------------------------------------ 1. Back up your system before installing a patch. 2. Login as root. 3. Copy the patch to the /tmp directory. 4. Move to the /tmp directory and unshar the patch: cd /tmp sh PHKL_21431 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHKL_21431.depot By default swinstall will archive the original software in /var/adm/sw/patch/PHKL_21431. If you do not wish to retain a copy of the original software, you can create an empty file named /var/adm/sw/patch/PATCH_NOSAVE. WARNING: If this file exists when a patch is installed, the patch cannot be deinstalled. Please be careful when using this feature. It is recommended that you move the PHKL_21431.text file to /var/adm/sw/patch for future reference. To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_21431.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: This patch depends on base patch PHKL_16750 . For successful installation, please ensure that PHKL_16750 is in the same depot with this patch, or PHKL_16750 is already installed.