Patch Name: PHKL_11432 Patch Description: s700 10.10 Ghost IO, PM, LVM, NFS cumulative patch Creation Date: 97/06/23 Post Date: 97/06/27 Hardware Platforms - OS Releases: s700: 10.10 Products: N/A Filesets: LVM.LVM-KRN OS-Core.CORE-KRN ProgSupport.C-INC Automatic Reboot?: Yes Status: General Superseded Critical: Yes PHKL_11432: CORRUPTION This patch when used with the appropriate SG/DLM version will avoid any potential windows for data corruption during reconfiguration in a HA cluster env. using SG or DLM PHKL_11121: PANIC PHKL_10201: PANIC PHKL_8393: HANG This patch adds a new feature to LVM. The feature is provided to customers who need the option to limit the time LVM waits for powerfailed disks in given logical volumes to return. PHKL_8292: HANG PHKL_8201: HANG PHKL_8082: ABORT PHKL_7868: PANIC PHKL_7458: PANIC PHKL_7301: PANIC PHKL_7244: OTHER Performance problems caused by excessive protection id faults PHKL_7187: CORRUPTION PHKL_7167: ABORT PHKL_7164: ABORT PHKL_7050: PANIC PHKL_6969: PANIC PHKL_6748: HANG PHKL_6484: PANIC CORRUPTION Path Name: /hp-ux_patches/s700/10.X/PHKL_11432 Symptoms: PHKL_11432: Ghost IO kernel patch : A customer might find corrupt data on disk after a Service Guard or Distributed Lock Manager fail-over. This defect is specific to the HA cluster environments. PHKL_11121: 1. Although users can now exec() programs with up to 2047998 bytes of argument and env strings, sysconf(_SC_ARG_MAX) continues to return 20478 bytes as the maximum length of all arguments and env strings. 2. Expanding the argv/envp string capacity to 2048000 bytes exposed an existing bug in pstat_cmd(). Code in that rou- tine could scan beyond the end of a particular internal 20480-byte buffer, resulting in a trap and system panic. PHKL_10873: HP-UX didn't log any error when a user process: 1. encountered a swap space shortage 2. exceeded a system resource limitation Processes were terminated but the errors were not recorded on any of the system log files. PHKL_10827: pstat_getlv() returns information about first VG only. PHKL_10270: The total length (including terminators) of all argv and env strings passed to a newly-EXECed process was 20480 bytes. If a greater length was detected, the exec() failed with E2BIG. PHKL_10201: System panic (data page fault) when debugging processes over an interruptable NFS mount point. PHKL_10103: Syslogd fills up file system. PHKL_9073: Applications using Memory Mapped Files were performing poorly when mapping thousands of pregions to the same file. The problem would mainly be noticed with shared (MAP_SHARED) and exclusive (MAP_FIXED with address in the process private data space) mappings. This patch is required when using the Object Store database product from ODI. PHKL_8928: Unable to mprotect non-mmap(2) addresses. PHKL_8920: On hp-ux 9.04 (S800) and 10.x (S700/S800), large MP systems with a high switch rate result in unacceptable level of KI CPU overhead. Moreover, the KI has the processor spinlock during this time with interrupts disabled! We have observed on a 10.10 TPC benchmark system that enabling the swtch trace in the KI reduces TPC throughput by 10%. PHKL_8790: Running strings on a raw sar(1) output file can show some printable strings (sar ignores these). PHKL_8714: After call to pstat_getmsg(), all accesses to the message queue pstat_getmsg() was called hang. PHKL_8461: The directory entry for a file system object (FSO) will no longer be readable once the contents of that object have been deleted. This was not shipped as a separate patch. PHKL_8393: This change supports a new -t switch for lvchange allowing the administrator the option to limit the time lvm holds i/os to be retried on logical volumes when disks are powerfailed. Without using this option, LVM will hold the i/os as long as there is is one disk where the data resides which may eventually return. Using this option would cause LVM to give up on the powerfailed disk and return i/o errors to the user application using the logical volume. This feature is obviously not to be used indiscriminately. For many High Availability applications, having i/os held in kernel indefinitely is not acceptable. Most customers should not need to use the new switch. PHKL_8292: When multiple nfsd's access the same file simultaneously, they hang in a deadlock. PHKL_8201: MP system hangs during panic. The LED shows system staying at INIT CB0B. Machine needs to be TOC'ed to save the core dump. PHKL_8082: LVM may return I/O's with errors instead of sending them to an alternate link. This patch also facilitates using "vgreduce -f" for physical volumes which have alternate links; without this patch "vgreduce -f" is not allowed on LVM disks with alternate links. PHKL_7868: lvreduce(1M) may cause a system panic, if it is used to reduce an lvol which was left inconsistent by a prior LVM operation. lvreduce(1M) could not be used to remove lvols that were somehow corrupted, if it was, the command would cause a system panic. PHKL_7668: Several types of symptoms may occur: - logins on NFS clients may receive incorrect access on NFS servers - files from NFS servers may appear to be owned by the wrong logins on NFS clients - setuid and setgid binaries available on NFS servers may allow client logins to run with incorrect access PHKL_7458: "panic trap type 18" problem on HP-UX 10.X NFS file server with short file name file system. PHKL_7334: Panic during power failure recovery on non-UPS systems. PHKL_7301: System panic with "Data page fault" in set_purge_SIDS() when using mprotect(2): trap type 15, pcsq.pcoq = 0.249f0c, isr.ior = 0.3c panic: (display==0xb800, flags==0x0) Data page fault panic+0x10 report_trap_or_int_and_panic+0x8c trap+0x72c set_purge_SIDS+0x0 invalidate_protids+0xbc hdl_changerange+0x1e0 hdl_mprotect+0x398 do_mprotect+0x140 foreach_pregion+0xe8 mprotect+0x78 syscall+0x1f4 This panic was mostly observed on systems running SAP R/3. PHKL_7244: MP T500 running 10.01 or 10.10 with Informix database exhibits poor performance and high levels of protection id traps after reboot. Problem exhibits itself after stopping/restarting application until system rebooted. /usr was a JFS VxFS file system. PHKL_7187: lvmerge could merge an lvol back with all PEs marked as current and yet the syncing of stale LTGs had failed. lv_recover_ltg(k), which does the syncing, had no mechanism to return error to lv_table_reimage(k). lv_table_reimage(k) therefore returns success when this may not be the case. PHKL_7167: program with itimer gets SIGILL when debugger uses ptrace PT_SINGLE PHKL_7164: Performance suffers for sequential i/o with LVM and disk arrays with stripe depth > 64k. Edison ARM utilities (and diagnostic tools that require exclusive access to a device) fail reporting device busy (EBUSY) even when all volume groups accessing the device are deactivated. Edison ARM utilities (and diagnostic tools that require exclusive access to a device) fail reporting device busy (EBUSY) if the device was ever used as a Service Guard Cluster Lock disk. PHKL_7124: For very large /etc/passwd files, passwd command may return EDEADLK and print an error message about lockf deadlock detection. PHKL_7050: pvmove leads to panic: lv_reducelv extmap, when the mirrored logical volume contains unallocated physical extents (might caused by previous unsuccessful pvmove operation (kill -9). vgchange: Couldn't activate volume group "/dev/vgpam": Invalid argument when users is doing deactivate a volume group, the system panic with "lv_cache_deactivate inflight". PHKL_6675 fixes some case and this patch fixes a special case. PHKL_6969: system panic when vgchange -a y VG with bad sectors on the bad block directory area. PHKL_6852: When a customer has a /etc/lvmtab which is out of data with running kernel, this will cause vgcfgbackup to fail. PHKL_6801: None. PHKL_6748: Rename deadlock: This deadlock occurs in the following situation: Process 1 is moving a directory to a new parent directory at the same time as Process 2 is doing a lookup on the new parent directory Process 1's directory is being moved into. Both processes will sleep forever and all accesses to both directories will also sleep. PHKL_6653: None. This is a pstat enhancement. PHKL_6484: itrunc: no space panic when truncating a file with a hole in it on a full file system. If the truncation makes the new end of the file fall into the middle of the hole, a disk block must be allocated for the end of the file, and if one can't be allocated, itrunc() would panic. This fix has itrunc gracefully backout instead. Possibility of random file system corruption or data loss when removing ACLs or files with ACLs has also been fixed. Defect Description: PHKL_11432: When a node dies in an HA cluster environment, there may be IO requests still pending on its intellegent disk IO boards (eg. Wizard card). The IO boards may continue to write this stale data to disks. This process is known as "Ghost IO". This situation may lead to data corruption when the other nodes in the HA cluster detect the failure, apply recovery logic, and perform IO to the disks. There is a need for detecting the death of a node and reseting the bus. This feature only impacts Service Guard/Distributed Lock Manager environments. PHKL_11121: 1. An earlier patch, PHKL_10177, expanded the actual space available to execve(), but failed to modify sysconf() to report the new maximum. This patch corrects that. There is no change to module kern_exec.c (home of execve()) other than a revision roll to ensure its inclusion in this patch. 2. pstat_cmd() scans the argv/envp buffer so that ps can display the first 64 characters. A limit error allowed the routine to scan until it found a null string terminator, even if that was well beyond the 64 bytes needed. This de- fect was unnoticed as long as there was only one 20480 byte buffer, since we were guaranteed to find a null terminator before (or at) the end of the buffer. With many internal 20480 byte buffers making up the total 2048000 argv/envp space, a particular argv/envp string can straddle more than one buffer. If these buffers are not contiguous, and pstat_cmd() scans off the end of a buffer before finding a null string terminator, it may reference an illegal memory address. That results in a trap and system panic. PHKL_10873: This patch provide support for logging of errors in memory management related system calls such as brk/sbrk as well as handling error cases during stack growth. Errors are logged on the system console (dmesg) and also in syslog. The variable mman_elog, which defaults to OFF, is used to control the logging. This variable can be set through adb at a customer site to enable error logging. PHKL_10827: pstat_lvinfo() algorithm describes that if the number of entries requested is non-zero, it will traverse through all the Volume Groups (VG) to report the open logical volume information. The test (lvix >= vgp->num_lvols) is used to test if LV index is covered by VG. This should be (lvix > cur_lvs) which is lvix compared to the number of open logical volumes. Also there can be some volumes that are configured but not mounted.(the VG where they reside is still ACTIVE). The fix now shows the all the logical volumes that are open in the system.(within any Volume Group). The defect can be reproduced by writing a program based on pstat_getlv() to display information about Logical Volumes configured on a system. The output of this program only shows logical volumes for the first volume group. PHKL_10270: The internal buffer within the kernel was created with a length of 20480 bytes, with no provision for increasing its size. This patch provides for up to 100 such buffers, with all but the first allocated only if required (that is, if more than 20480 bytes of argv/env information is found). Thus, exec() now supports up to 2048000 bytes of argv/env information. PHKL_10201: When debugging processes over an interruptable NFS mount point there was a window during which a traced process could sleep in exec() while the debugger would exit clearing the traced bit and freeing the ptrace data structure. Upon wakeup, the no longer traced process would panic the system trying to dereference a NULL pointer. PHKL_10103: msg_bufx was set to the value over MSG_BSIZE. PHKL_9073: The pregions list associated to a shared region was designed as a doubly-linked list thus providing a linear access to pregions in the list. This design was not suited to deal with thousands of pregions and the doubly-linked list was replaced by a skip-list for faster access. Two other changes were required to deliver better performance: the algorithm to check the total virtual address space and the routine to locate the stack pregion were enhanced. PHKL_8928: Currently mprotect() restricts the addresses it will accept for protection. Only those addresses returned from a call to mmap() can be used for mprotect(). However there are customers who need to mprotect addresses in the data, stack and shared memory segments; objects not created vi a call to mmap(). So mprotect() was opened to allow mprotect'ing on data, stack and shared memory objects. Text is not allowed unless the executable is EXEC_MAGIC. PHKL_8920: The KI swtch trace generation code in the kernel walks all pregions in the vas of the swtched process. PTC's MI and performance tools do not need rss values updated every context switch - the extra overhead is not worth the small increase in accuracy. It is sufficient to copy the pid's vas_t->va.prss+vas_t->va.rss (private + shared) value which is updated every 5 seconds by statdaemon. PHKL_8790: pstat_dynamic() allocates a buffer but fails to initialize it before using it. Buffer ends up containing some garbage. This is a cosmetic defect only; sar ignores the uninitialized spaces. PHKL_8714: pstat_msginfo() calls msgconv() to convert the offset into a message queue pointer. msgconv() was changed to not only do the conversion, but to lock the queue and return a pointer to the queue's lock. pstat_msginfo() had not been changed to take into account msgconv()'s new behavior. PHKL_8461: The name of a file in a directory entry is not cleared when the file object itself is deleted (say, with rm(1)). To demonstrate this: $ mkdir test $ cd test $ touch delete_me $ ls delete_me $ rm delete_me $ ll total 0 $ strings . # Examine strings in cwd. delete_me # Filename is still in cwd entry. This was not shipped as a separate patch. PHKL_8393: LVM makes every effort to avoid returning an error to user applications. LVM will hold onto an I/O to retry it later if there is even the smallest hope that the device will return. If a disk simply does not respond and no bad writes made it to the media, LVM will hang onto the i/o as long as the disk does not respond with an indication that there was actually a bad write or read. The patch provides a new feature that allows administrators the option of limiting the time lvm will wait for disks in an logical volume to return, and cause lvm to return i/os with EIO instead of hanging onto them indefinitely. PHKL_8292: ufs_bread(), called by nfs server routines, prematurely unlocks the inode while the caller still owns the buffer. This opens a window for another process to grab the inode lock. Deadlock occurs when the process owning the buffer tries to access the inode again and the process holding the inode waits for the buffer to be available before it can release the inode lock. The fix is to delay the inode unlocking in ufs_bread() until the inode is no longer needed. PHKL_8201: In 10.X, interrupt distribution is implemented to allow reassignment of interrupt processors to I/O interfaces for workload balancing. The assigned interrupt processor for an I/O interface may or may not be the system monarch depending on the the number of I/O cards and processors available. During a panic, if the panic processor is the system monarch, it will flush the buffer cache on its way down. If the interrupt of the disk it is syncing is serviced by one of the other processor(s), the I/O completion interrupt will not be received and the ISR will not be called because the other processor(s) are TOC'ed at this point. Without the ISR to signal biodone(), the biowait() sleeps forever. The fix is to add a timeout in the panic_boot path to break out from the hang in disk sync'ing and continue with the reboot. PHKL_8082: Without this patch LVM will not retry failed i/os on alternate links unless the error is one that denotes that the device is offline or powerfailed. Other errors, are not retried on an alternate link and may cause LVM to report the error to users applications. Typically, customers with unmirrored lvols using multiported devices like the HP3232 (Nike) disk array would see the problem when an EIO error is reported to LVM from the underlying device driver due to a device or driver problem. In this situation LVM would report the EIO to user applications without trying any available alternate link. Another problem this patch fixes allows reducing out physical volumes from a volume group when the device is not available and the device has links, formerly devices with links could not be removed if they were not available. PHKL_7868: The problem was that the kernel forced a panic whenever any inconsistency was found during an lvreduce. For example, if a logical extent in an lvol referred to a physical extent that was not allocated, it would cause lvreduce(1M) to panic the system. This occured even when the objective was to remove the offending lvol. This is a very rare occurance. PHKL_7668: A future HP-UX release will increase the value of MAXUID, providing for a greater range of valid UIDs and GIDs. It will also introduce problems in mixed-mode NFS environments. Let "LUID" specify a machine running a version of HP-UX with large-UID capability. Let "SUID" specify a machine with current small-UID capability. The following problems may occur: LUID client, SUID server - Client logins with UIDs outside the server's range appear as the anonymous user. However, the anonymous user UID is configurable, and is sometimes configured as the root user (in order to "trust" all client root logins without large-scale modifications to the /etc/exports file). Thus, all logins with large UIDs on the client could be mapped to root on the server. - Files owned by the nobody user on the server will appear to be owned by the wrong user on the client. SUID client, LUID server - Files owned by large-UID logins on the server will appear to be owned by the wrong user on the client. - Executables with the setuid or setgid mode turned on will allow logins on the client to run as the wrong users. PHKL_7458: K200 HP-UX10.01 is the NFS file server. "/db1" is exported. exportfs /db1 -anon=65534,root=g40 /db2 -anon=65534,root=g40 /home -anon=65534,root=g40 /usr/itl.obj -anon=65534,root=g40 These are HFS file systems. g40 HP-UX9.04 is the client. The customer executed NFS mount command on g40. 1- mount k200:/db1/itloper /users/itloper/itl 2- mount k200:/db1/itloper/itc /users/itloper/itc The system rebooted at step 2 by trap type 18. PHKL_7334: page reference traps were not correctly set on I/O pages. PHKL_7301: The code for processes Virtual Address Space duplication (used by fork) inserted pregions in the associated region lists before setting the VAS field va_proc. This opened a time window where set_purge_SIDS() could dereference a proc pointer before it was actually set. The system would then trap and panic with a data page fault. The defect would occur when using mprotect(2), and this panic was mostly observed on systems running SAP R/3. PHKL_7244: We only allow a public mapping if we are mapping shared (and thus read-only for now) and if the file's modes meet our tests (no ACL, and mode at least r-xr-xr-x). In one case, /usr (where the shared libraries reside) on their system turns out to be a JFS file system. JFS does not know about ACL and does not manipulate the va_acl bit in 'struct vattr', when VOP_GETATTR() is called. HFS on the other hand will set va_acl to 1 if that file has ACL and 0, if not. Since, smmap() does not initialize the structure (on the stack) and calls VOP_GETATTR() and then looks at the va_acl bit, it can either be a 1 or a 0, randomly. It is not correct for VM subsystem to assume all file systems support ACL and will correct set/reset the bit in the vattr structure as there could be third party file system (eg: JFS) that do not support it. When the libc.1 is first mmapp'ed, the smmap() code finds that va_acl is set (wrongly), it decides not to do public mapping (the region does not get the RHDL_MMAP_PUBLIC set) and so the protection id is set to the second quadrant space id of that process, instead of the public protection id of 0 Since, the informix (oninit) processes have a lot of shared memory segments, each of which has an unique protection id, and constantly accesses the shared memory region and execute library code, the protection id (pid3 & pid4) is getting thrashed in the pid registers. The instruction protection fault code is getting thrashed in the pid registers. The instruction protection fault code (IMEM_PROT) does not make use of the cache (kept per processor) and always uses the trap (long) path to update the protection registers. Hence, you see about 30-40% of the time in trap code. The following fix will ensure that the shared library text segments always get the public protection id. This will cut down the number of protection faults seen in informix. PHKL_7187: lvmerge could merge an lvol back with all PEs marked as current and yet the syncing of stale LTGs had failed. lv_recover_ltg(k), which does the syncing, had no mechanism to return error to lv_table_reimage(k). lv_table_reimage(k) therefore returns success when this may not be the case PHKL_7167: See defect PHKL_7164: LVM user data was aligned to a 1k bound. For sequential i/o directed to disk arrays which stripe the data, i/os with a buf size approaching the stripe depth of the device (64k for the Edison array) would require the device to perform two i/os for each i/o directed to the device. LVM was not always closing and releasing devices held when volume groups were deactivated or when a device was used as a Service Guard Cluster Lock disk. PHKL_7124: PHKL_6763 caused the kernel routine direnter() to return EDEADLK if it couldn't lock all the directories and files it needed to. The change was made to fix a deadlock problem caused by moving directories, and it was thought that direnter() could only hit this state for the DE_RENAME function. The problem can also be hit for large, popular files like /etc/passwd which are being linked to a new name. The fix is to have ufs_link() retry direnter() if EDEADLK is returned, just as ufs_rename() did in the original patch. PHKL_7050: Customer were using pvmove command to move data from one disk to another. For some reason, the mirrored logical volume to be moved contains unallocated physical extents. system panic: lv_reducelv extmap For vgchange: Couldn't activate volume group problem, it is easily duplicatable following the replacement of a disk mech, or with a simply vgcfgrestore/vgchange combination to the right disks. - connect an HP-FL disk to system, then do the following: Create a volume group with this disk in it (automatically runs vgcfgbackup) pvcreate -f /dev/rdsk/c0t2d0 mkdir /dev/vgdan mknod /dev/vgdan/group c 64 0x090000 vgcreate /dev/vgdan /dev/dsk/c0t2d0 then de-activate the vg: vgchange -a n /dev/vgdan restore the lvm data structures to the disk: vgcfgrestore -n /dev/vgdan /dev/rdsk/c0t2d0 At this point, any further activation of the VG will fail: vgchange -a y /dev/vgdan vgchange: Couldn't activate volume group "/dev/vgpam": Invalid argument The lv_cache_deactivate inflight panics problem were: When user is doing deactivate a volume group, if mwc cache is not clean, the deactivation routine will detect it and panic. When the last user LV (/dev/vgXX/lvol[1-n]) of a volume group is closing and the controlling LV (/dev/vgXX/group) still opened, it should also wait for all outstanding MWC cache writes to be finished. PHKL_6969: if a LVM disk have bad sectors on the bad block directory area. vgchange -a y VG will cause the panic. PHKL_6852: The customer has a T500 & HPUX10.01 and ran into the problem with "/etc/lvmtab is out of date with running kernel" when doing a vgcfgbackup. The current PV value is set to 7, while there are only 6 disks in the /etc/lvmtab. PHKL_6801: None. PHKL_6748: Directory renaming code locks the new parent directory and reads the new parent directory buffer, thereby locking it. It then drops the new parent directory lock and later tries to reacquire it. If a lookup process has gotten the new parent directory lock in the meantime and is sleeping waiting for the new parent directory buffer to be free, deadlock! PHKL_6653: No defect with the kernel. Although this patch does allow a patch to fix a defect with fuser -k to work. PHKL_6484: If truncating a file with a hole in the middle of it causes the new end of file to fall in the middle of a hole, a new disk block must be allocated to hold the end of file. If the file system is full and a block can't be allocated, itrunc was panicing. There is a remote possibility that removing an Access Control List could cause file system data loss or corruption. This defect was found during a code inspection, and has never (to our knowledge) been seen by any customer. SR: 1653096131 1653144071 1653153247 1653162669 1653166785 1653202754 4701311381 4701311415 4701312934 4701314179 4701314302 4701315317 4701317131 4701318352 4701319335 4701319541 4701321554 4701321695 4701321711 4701330647 4701334698 4701334839 4701336412 4701339945 4701358523 5000697466 5000714352 5003281469 5003300400 5003309385 5003314252 5003314633 5003318667 5003323493 5003325506 5003330910 5003334961 5003341925 5003365692 5003366930 Patch Files: /usr/conf/h/pstat.h /usr/conf/lib/libhp-ux.a(asm_excp.o) /usr/conf/lib/libhp-ux.a(asm_tlb.o) /usr/conf/lib/libhp-ux.a(asm_tlb2_0.o) /usr/conf/lib/libhp-ux.a(cpd.o) /usr/conf/lib/libhp-ux.a(dmem.o) /usr/conf/lib/libhp-ux.a(dump.o) /usr/conf/lib/libhp-ux.a(fmpyfadd.o) /usr/conf/lib/libhp-ux.a(fpudispatch.o) /usr/conf/lib/libhp-ux.a(hdl_fault.o) /usr/conf/lib/libhp-ux.a(hdl_mprotect.o) /usr/conf/lib/libhp-ux.a(hdl_policy.o) /usr/conf/lib/libhp-ux.a(hdl_trans.o) /usr/conf/lib/libhp-ux.a(kern_exec.o) /usr/conf/lib/libhp-ux.a(kern_fork.o) /usr/conf/lib/libhp-ux.a(kern_mman.o) /usr/conf/lib/libhp-ux.a(lpmc.o) /usr/conf/lib/libhp-ux.a(lv_config.o) /usr/conf/lib/libhp-ux.a(lv_lvm.o) /usr/conf/lib/libhp-ux.a(machdep.o) /usr/conf/lib/libhp-ux.a(pm_config.o) /usr/conf/lib/libhp-ux.a(pm_procdup.o) /usr/conf/lib/libhp-ux.a(proc_iface.o) /usr/conf/lib/libhp-ux.a(pstat.o) /usr/conf/lib/libhp-ux.a(snakes_rs232.o) /usr/conf/lib/libhp-ux.a(subr_prf.o) /usr/conf/lib/libhp-ux.a(sysV_shm.o) /usr/conf/lib/libhp-ux.a(sys_ki.o) /usr/conf/lib/libhp-ux.a(trap.o) /usr/conf/lib/libhp-ux.a(vm_devswap.o) /usr/conf/lib/libhp-ux.a(vm_machdep.o) /usr/conf/lib/libhp-ux.a(vm_mmap.o) /usr/conf/lib/libhp-ux.a(vm_pdir1_1.o) /usr/conf/lib/libhp-ux.a(vm_pdir2_0.o) /usr/conf/lib/libhp-ux.a(vm_pregion.o) /usr/conf/lib/libhp-ux.a(vm_region.o) /usr/conf/lib/libhp-ux.a(vm_remap.o) /usr/conf/lib/libhp-ux.a(vm_vas.o) /usr/conf/lib/libhp-ux.a(vm_vhand.o) /usr/conf/lib/liblvm.a(lv_block.o) /usr/conf/lib/liblvm.a(lv_cluster_lock.o) /usr/conf/lib/liblvm.a(lv_defect.o) /usr/conf/lib/liblvm.a(lv_hp.o) /usr/conf/lib/liblvm.a(lv_ioctls.o) /usr/conf/lib/liblvm.a(lv_kdb.o) /usr/conf/lib/liblvm.a(lv_lvsubr.o) /usr/conf/lib/liblvm.a(lv_malloc.o) /usr/conf/lib/liblvm.a(lv_mircons.o) /usr/conf/lib/liblvm.a(lv_pbuf.o) /usr/conf/lib/liblvm.a(lv_phys.o) /usr/conf/lib/liblvm.a(lv_schedule.o) /usr/conf/lib/liblvm.a(lv_strategy.o) /usr/conf/lib/liblvm.a(lv_subr.o) /usr/conf/lib/liblvm.a(lv_syscalls.o) /usr/conf/lib/liblvm.a(lv_vgda.o) /usr/conf/lib/liblvm.a(lv_vgsa.o) /usr/conf/lib/liblvm.a(sh_vgsa.o) /usr/conf/lib/liblvm.a(slvm_comm.o) /usr/conf/lib/liblvm.a(slvm_schedule.o) /usr/conf/lib/libufs.a(ufs_dir.o) /usr/conf/lib/libufs.a(ufs_inode.o) /usr/conf/lib/libufs.a(ufs_vnops.o) /usr/include/sys/pstat.h what(1) Output: /usr/conf/h/pstat.h: pstat.h $Date: 96/01/18 13:52:54 $ $Revision: 1.9.89 .13 $ PATCH_10.10 (PHKL_6653) /usr/conf/lib/libhp-ux.a(asm_excp.o): asm_excp.s $Date: 96/02/29 17:42:54 $ $Revision: 1.2 1.89.7 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(asm_tlb.o): asm_tlb.s $Date: 96/04/19 10:15:17 $ $Revision: 1.5.89.7 $ PATCH_10.10 (PHKL_7334) /usr/conf/lib/libhp-ux.a(asm_tlb2_0.o): asm_tlb2_0.s $Date: 96/04/19 10:15:22 $ $Revision: 1.2.90.6 $ PATCH_10.10 (PHKL_7334) /usr/conf/lib/libhp-ux.a(cpd.o): cpd.c $Date: 97/06/19 17:48:48 $ $Revision: 1.3.89.9 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/libhp-ux.a(dmem.o): dmem.c $Date: 96/02/29 17:49:24 $ $Revision: 1.50.8 9.14 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(dump.o): dump.c $Date: 97/06/19 17:49:41 $ $Revision: 1.7.89. 8 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/libhp-ux.a(fmpyfadd.o): fmpyfadd.c $Date: 96/02/29 17:58:11 $ $Revision: 1. 2.89.5 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(fpudispatch.o): fpudispatch.c $Date: 96/02/29 17:49:31 $ $Revision: 1.4.89.8 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(hdl_fault.o): hdl_fault.c $Date: 97/04/25 14:21:38 $ $Revision: 1.10.89.15 $ PATCH_10.10 (PHKL_10873) /usr/conf/lib/libhp-ux.a(hdl_mprotect.o): hdl_mprotect.c $Date: 96/11/13 16:15:50 $ $Revision : 1.3.89.10 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(hdl_policy.o): hdl_policy.c $Date: 96/11/13 16:16:03 $ $Revision: 1.11.89.17 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(hdl_trans.o): hdl_trans.c $Date: 96/02/29 17:49:20 $ $Revision: 1 .10.89.13 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(kern_exec.o): kern_exec.c $Date: 97/05/15 15:36:50 $ $Revision: 1.89.89.38 $ PATCH_10.10 (PHKL_11121) /usr/conf/lib/libhp-ux.a(kern_fork.o): kern_fork.c $Date: 96/04/19 10:19:21 $ $Revision: 1.67.89.45 $ PATCH_10.10 (PHKL_7334) /usr/conf/lib/libhp-ux.a(kern_mman.o): kern_mman.c $Date: 97/04/25 14:15:18 $ $Revision: 1.33.89.13 $ PATCH_10.10 (PHKL_10873) /usr/conf/lib/libhp-ux.a(lpmc.o): lpmc.c $Date: 96/02/29 17:49:26 $ $Revision: 1.4.89 .7 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(lv_config.o): lv_config.c $Date: 97/06/19 16:23:19 $ $Revision: 1. 8.89.11 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/libhp-ux.a(lv_lvm.o): lv_lvm.c $Date: 97/06/19 17:48:28 $ $Revision: 1.2.8 9.3 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/libhp-ux.a(machdep.o): machdep.c $Date: 96/08/07 10:29:00 $ $Revision: 1. 120.89.16 $ PATCH_10.10 (PHKL_8201) /usr/conf/lib/libhp-ux.a(pm_config.o): pm_config.c $Date: 97/05/15 15:45:44 $ $Revision: 1. 3.89.12 $ PATCH_10.10 (PHKL_11121) /usr/conf/lib/libhp-ux.a(pm_procdup.o): pm_procdup.c $Date: 96/04/16 13:37:04 $ $Revision: 1.8.89.20 $ PATCH_10.10 (PHKL_7301) /usr/conf/lib/libhp-ux.a(proc_iface.o): proc_iface.c $Date: 96/04/19 10:19:12 $ $Revision: 1.2.89.15 $ PATCH_10.10 (PHKL_7334) /usr/conf/lib/libhp-ux.a(pstat.o): pstat.c $Date: 97/06/19 17:49:07 $ $Revision: 1.14.8 9.37 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/libhp-ux.a(snakes_rs232.o): snakes_rs232.c $Date: 96/04/19 10:16:51 $ $Revision: 1.5.89.3 $ PATCH_10.10 (PHKL_7334) /usr/conf/lib/libhp-ux.a(subr_prf.o): subr_prf.c $Date: 97/02/12 10:04:14 $ $Revision: 1 .63.89.12 $ PATCH_10.10 (PHKL_10103) /usr/conf/lib/libhp-ux.a(sysV_shm.o): sysV_shm.c $Date: 96/11/13 16:13:08 $ $Revision: 1.53.89.9 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(sys_ki.o): sys_ki.c $Date: 96/11/08 12:42:51 $ $Revision: 1.1 5.89.26 $ PATCH_10.10 (PHKL_8920) /usr/conf/lib/libhp-ux.a(trap.o): trap.c $Date: 96/04/19 10:12:44 $ $Revision: 1.165.89.33 $ PATCH_10.10 (PHKL_7334) /usr/conf/lib/libhp-ux.a(vm_devswap.o): vm_devswap.c $Date: 96/02/29 17:53:41 $ $Revision: 1.15.89.21 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(vm_machdep.o): vm_machdep.c $Date: 96/11/13 16:16:06 $ $Revision: 1.152.89.38 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(vm_mmap.o): vm_mmap.c $Date: 96/11/13 16:13:01 $ $Revision: 1.13.89.21 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(vm_pdir1_1.o): vm_pdir1_1.c $Date: 96/04/19 10:15:13 $ $Revision: 1.2.90.12 $ PATCH_10.10 (PHKL_7334) /usr/conf/lib/libhp-ux.a(vm_pdir2_0.o): vm_pdir2_0.c $Date: 96/02/29 17:49:36 $ $Revision: 1.2.90.10 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(vm_pregion.o): vm_pregion.c $Date: 96/11/13 16:12:57 $ $Revision: 1.12.89.15 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(vm_region.o): vm_region.c $Date: 96/11/13 16:13:10 $ $Revision: 1.17.89.7 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(vm_remap.o): vm_remap.c $Date: 96/02/29 17:53:43 $ $Revision: 1. 6.89.10 $ PATCH_10.10 (PHKL_6801) /usr/conf/lib/libhp-ux.a(vm_vas.o): vm_vas.c $Date: 96/11/13 16:12:21 $ $Revision: 1.14.89.30 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/libhp-ux.a(vm_vhand.o): vm_vhand.c $Date: 96/11/13 16:13:04 $ $Revision: 1.16.89.17 $ PATCH_10.10 (PHKL_9073) /usr/conf/lib/liblvm.a(lv_block.o): lv_block.c $Date: 97/06/19 16:23:18 $ $Revision: 1 .8.89.6 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_cluster_lock.o): lv_cluster_lock.c $Date: 97/06/19 16:22:52 $ $Revi sion: 1.3.89.13 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_defect.o): lv_defect.c $Date: 97/06/19 16:23:17 $ $Revision: 1. 8.89.14 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_hp.o): lv_hp.c $Date: 97/06/18 16:16:19 $ $Revision: 1.8.89 .37 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_ioctls.o): lv_ioctls.c $Date: 97/06/18 16:17:26 $ $Revision: 1.8.89.22 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_kdb.o): lv_kdb.c $Date: 97/06/19 16:22:56 $ $Revision: 1.6 .89.6 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_lvsubr.o): lv_lvsubr.c $Date: 97/06/19 16:23:13 $ $Revision: 1.8.89.28 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_malloc.o): lv_malloc.c $Date: 97/06/19 16:22:54 $ $Revision: 1.8.89.6 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_mircons.o): lv_mircons.c $Date: 97/06/19 16:23:11 $ $Revision: 1 .8.89.18 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_pbuf.o): lv_pbuf.c $Date: 97/06/19 16:23:09 $ $Revision: 1. 8.89.8 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_phys.o): lv_phys.c $Date: 97/06/19 16:23:07 $ $Revision: 1.8. 89.12 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_schedule.o): lv_schedule.c $Date: 97/06/19 16:23:05 $ $Revision: 1.8.89.15 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_strategy.o): lv_strategy.c $Date: 97/06/19 16:23:04 $ $Revision: 1.8.89.13 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_subr.o): lv_subr.c $Date: 97/06/19 16:23:02 $ $Revision: 1.8. 89.17 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_syscalls.o): lv_syscalls.c $Date: 97/06/18 16:17:32 $ $Revision: 1.8.89.13 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_vgda.o): lv_vgda.c $Date: 97/06/19 16:23:00 $ $Revision: 1. 8.89.12 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(lv_vgsa.o): lv_vgsa.c $Date: 97/06/19 16:22:57 $ $Revision: 1.8. 89.20 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(sh_vgsa.o): sh_vgsa.c $Date: 97/06/18 16:17:34 $ $Revision: 1.2. 89.13 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(slvm_comm.o): slvm_comm.c $Date: 97/06/19 16:22:48 $ $Revision: 1. 2.89.7 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/liblvm.a(slvm_schedule.o): slvm_schedule.c $Date: 97/06/19 16:22:29 $ $Revision : 1.2.89.17 $ PATCH_10.10 (PHKL_11432) /usr/conf/lib/libufs.a(ufs_dir.o): ufs_dir.c $Date: 96/06/07 11:25:31 $ $Revision: 1.17.89.16 $ PATCH_10.10 (PHKL_8461) /usr/conf/lib/libufs.a(ufs_inode.o): ufs_inode.c $Date: 96/01/10 13:40:27 $ $Revision: 1.42.89.15 $ PATCH_10.10 (PHKL_6484) /usr/conf/lib/libufs.a(ufs_vnops.o): ufs_vnops.c $Date: 96/08/14 17:02:08 $ $Revision: 1.24.89.25 $ PATCH_10.10 (PHKL_8292) /usr/include/sys/pstat.h: pstat.h $Date: 96/01/18 13:52:54 $ $Revision: 1.9.89 .13 $ PATCH_10.10 (PHKL_6653) cksum(1) Output: 351025292 35051 /usr/conf/h/pstat.h 3931996340 3108 /usr/conf/lib/libhp-ux.a(asm_excp.o) 1169006284 41224 /usr/conf/lib/libhp-ux.a(asm_tlb.o) 2534453469 14452 /usr/conf/lib/libhp-ux.a(asm_tlb2_0.o) 1501320178 11172 /usr/conf/lib/libhp-ux.a(cpd.o) 2366865159 8908 /usr/conf/lib/libhp-ux.a(dmem.o) 823013355 12692 /usr/conf/lib/libhp-ux.a(dump.o) 986054333 17224 /usr/conf/lib/libhp-ux.a(fmpyfadd.o) 3159161935 10932 /usr/conf/lib/libhp-ux.a(fpudispatch.o) 3165764122 12940 /usr/conf/lib/libhp-ux.a(hdl_fault.o) 2430971761 15792 /usr/conf/lib/libhp-ux.a(hdl_mprotect.o) 3733008830 11660 /usr/conf/lib/libhp-ux.a(hdl_policy.o) 3260695634 8880 /usr/conf/lib/libhp-ux.a(hdl_trans.o) 1343411182 15700 /usr/conf/lib/libhp-ux.a(kern_exec.o) 613436261 14236 /usr/conf/lib/libhp-ux.a(kern_fork.o) 2668531744 3816 /usr/conf/lib/libhp-ux.a(kern_mman.o) 3103322954 6824 /usr/conf/lib/libhp-ux.a(lpmc.o) 557290747 26576 /usr/conf/lib/libhp-ux.a(lv_config.o) 157892121 102088 /usr/conf/lib/libhp-ux.a(lv_lvm.o) 2666974195 30032 /usr/conf/lib/libhp-ux.a(machdep.o) 3007258904 5868 /usr/conf/lib/libhp-ux.a(pm_config.o) 1140687353 6408 /usr/conf/lib/libhp-ux.a(pm_procdup.o) 1374434585 12912 /usr/conf/lib/libhp-ux.a(proc_iface.o) 2713070676 23112 /usr/conf/lib/libhp-ux.a(pstat.o) 3705526801 5964 /usr/conf/lib/libhp-ux.a(snakes_rs232.o) 2432253643 16484 /usr/conf/lib/libhp-ux.a(subr_prf.o) 3611221468 8428 /usr/conf/lib/libhp-ux.a(sysV_shm.o) 2093087402 59652 /usr/conf/lib/libhp-ux.a(sys_ki.o) 403410752 21680 /usr/conf/lib/libhp-ux.a(trap.o) 2090489607 15296 /usr/conf/lib/libhp-ux.a(vm_devswap.o) 3561121188 88400 /usr/conf/lib/libhp-ux.a(vm_machdep.o) 354670341 20668 /usr/conf/lib/libhp-ux.a(vm_mmap.o) 874224294 39144 /usr/conf/lib/libhp-ux.a(vm_pdir1_1.o) 2738926588 29600 /usr/conf/lib/libhp-ux.a(vm_pdir2_0.o) 1975125224 11700 /usr/conf/lib/libhp-ux.a(vm_pregion.o) 3495003745 11328 /usr/conf/lib/libhp-ux.a(vm_region.o) 4138546304 8704 /usr/conf/lib/libhp-ux.a(vm_remap.o) 3420929275 12968 /usr/conf/lib/libhp-ux.a(vm_vas.o) 632083219 15924 /usr/conf/lib/libhp-ux.a(vm_vhand.o) 2081605216 2360 /usr/conf/lib/liblvm.a(lv_block.o) 3655535219 10124 /usr/conf/lib/liblvm.a(lv_cluster_lock.o) 3243873833 12032 /usr/conf/lib/liblvm.a(lv_defect.o) 88337327 41764 /usr/conf/lib/liblvm.a(lv_hp.o) 3329440977 26764 /usr/conf/lib/liblvm.a(lv_ioctls.o) 1066660338 732 /usr/conf/lib/liblvm.a(lv_kdb.o) 1276756336 34468 /usr/conf/lib/liblvm.a(lv_lvsubr.o) 4053459022 2416 /usr/conf/lib/liblvm.a(lv_malloc.o) 1611741354 18132 /usr/conf/lib/liblvm.a(lv_mircons.o) 4247065797 5876 /usr/conf/lib/liblvm.a(lv_pbuf.o) 1829049887 6784 /usr/conf/lib/liblvm.a(lv_phys.o) 1010723492 19996 /usr/conf/lib/liblvm.a(lv_schedule.o) 2539597430 7436 /usr/conf/lib/liblvm.a(lv_strategy.o) 1892668715 8584 /usr/conf/lib/liblvm.a(lv_subr.o) 2989147741 18152 /usr/conf/lib/liblvm.a(lv_syscalls.o) 78888363 8700 /usr/conf/lib/liblvm.a(lv_vgda.o) 1823992439 12764 /usr/conf/lib/liblvm.a(lv_vgsa.o) 1683985499 28684 /usr/conf/lib/liblvm.a(sh_vgsa.o) 3955021617 23012 /usr/conf/lib/liblvm.a(slvm_comm.o) 1923340697 6980 /usr/conf/lib/liblvm.a(slvm_schedule.o) 602422226 19660 /usr/conf/lib/libufs.a(ufs_dir.o) 3942758326 25636 /usr/conf/lib/libufs.a(ufs_inode.o) 640680162 30648 /usr/conf/lib/libufs.a(ufs_vnops.o) 351025292 35051 /usr/include/sys/pstat.h Patch Conflicts: None Patch Dependencies: s700: 10.10: PHCO_8459 Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_6484 PHKL_6653 PHKL_6748 PHKL_6801 PHKL_6852 PHKL_6969 PHKL_7050 PHKL_7124 PHKL_7164 PHKL_7167 PHKL_7187 PHKL_7244 PHKL_7301 PHKL_7334 PHKL_7458 PHKL_7668 PHKL_7868 PHKL_8082 PHKL_8201 PHKL_8292 PHKL_8393 PHKL_8461 PHKL_8714 PHKL_8790 PHKL_8920 PHKL_8928 PHKL_9073 PHKL_10103 PHKL_10201 PHKL_10270 PHKL_10827 PHKL_10873 PHKL_11121 Equivalent Patches: PHKL_11433: s800: 10.10 Patch Package Size: 1290 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_11432 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHKL_11432.depot 5b. For a homogeneous NFS Diskless cluster run swcluster on the server to install the patch on the server and the clients: swcluster -i -b This will invoke swcluster in the interactive mode and force all clients to be shut down. WARNING: All cluster clients must be shut down prior to the patch installation. Installing the patch while the clients are booted is unsupported and can lead to serious problems. The swcluster command will invoke an swinstall session in which you must specify: alternate root path - default is /export/shared_root/OS_700 source depot path - /tmp/PHKL_11432.depot To complete the installation, select the patch by choosing "Actions -> Match What Target Has" and then "Actions -> Install" from the Menubar. 5c. For a heterogeneous NFS Diskless cluster: - run swinstall on the server as in step 5a to install the patch on the cluster server. - run swcluster on the server as in step 5b to install the patch on the cluster clients. By default swinstall will archive the original software in /var/adm/sw/patch/PHKL_11432. 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_11432.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_11432.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: Due to the number of objects in this patch, the customization phase of the update may take more than 10 minutes. During that time the system will not appear to make forward progress, but it will actually be installing the objects.