Patch Name: PHKL_30515 Patch Description: s700_800 11.11 'sar -d' reports inaccurate data Creation Date: 04/03/24 Post Date: 04/05/06 Hardware Platforms - OS Releases: s700: 11.11 s800: 11.11 Products: N/A Filesets: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP Automatic Reboot?: Yes Status: General Release Critical: No Category Tags: defect_repair general_release Path Name: /hp-ux_patches/s700_800/11.X/PHKL_30515 Symptoms: PHKL_30515: ( SR:8606331074 CR:JAGae92195 ) The -d option of the sar(1M) command reports inaccurate data in the "avwait", "avserv" and "%busy" columns. ( SR:8606353599 CR:JAGaf14393 ) There are no customer visible symptoms. PHKL_27200: ( SR:8606249217 CR:JAGae15611 ) "sar -d" reports incorrect values for avque and avwait. Example output: device %busy avque r+w/s blks/s avwait avserv c17t1d1 66.00 60178.29 284 27206 2124620672.00 0.00 c25t1d1 67.00 32767.50 296 28525 4.91 2.91 c33t1d1 69.00 65531.50 294 28413 4.99 2.87 c41t1d1 67.60 65534.50 316 29669 5.04 2.68 c49t1d1 67.80 60426.86 310 29845 1295032832.00 0.00 Defect Description: PHKL_30515: ( SR:8606331074 CR:JAGae92195 ) The kernel uses two time sources with incompatible resolution to mark the start and end of disk transfers. The 10 millisecond sampling method of measuring busy time is inaccurate for most of the new and fast disks. Resolution: Use the same high resolution time source for IO timestamps in the 64-bit kernel. Replace sampling method by direct calculation of the busy time from the new timestamps. This solution does not address 32-bit kernels due to the high overhead of generating 64-bit timestamps. ( SR:8606353599 CR:JAGaf14393 ) The enqueue timestamp in the buf structure is not set at the correct time on the requeue path. This condition can only be detected by HP internal testing. Resolution: Initialize the timestamp at the requeue event. PHKL_27200: ( SR:8606249217 CR:JAGae15611 ) The filesystem merges the I/O buffers before sending them to the disk driver. The kernel routine used to measure and gather data for sar did not handle the combined buffers: it did not timestamp the individual elements in the merged list, nor record their lengths correctly. Resolution: The buffer enqueue routine is made aware of the merged lists. This problem has been fixed by timestamping the queue-time field of every buffer in the list in the buffer enqueue routine. This field is used in the computation of "avwait" field of the sar(1M) command. Also, in the case of a merged list of buffers, the fields corresponding to cumulative queue length and the number of buffers enqueued, associated with an I/O device, are updated as every buffer element is enqueued. These two fields are used in the computation of the "avque" field in the sar(1M) command. Enhancement: No SR: 8606249217 8606331074 8606353599 Patch Files: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpm.a(kmetric.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpm.a(kmetric.o) what(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpm.a(kmetric.o): kmetric.c $Date: 2004/03/09 19:27:12 $Revision: r11. 11/2 PATCH_11.11 (PHKL_30515) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpm.a(kmetric.o): kmetric.c $Date: 2004/03/09 19:27:12 $Revision: r11. 11/2 PATCH_11.11 (PHKL_30515) cksum(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: 2004861286 5760 /usr/conf/lib/libpm.a(kmetric.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: 3148723872 14232 /usr/conf/lib/libpm.a(kmetric.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_27200 Equivalent Patches: None Patch Package Size: 30 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_30515 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHKL_30515.depot By default swinstall will archive the original software in /var/adm/sw/save/PHKL_30515. If you do not wish to retain a copy of the original software, include the patch_save_files option in the swinstall command above: -x patch_save_files=false WARNING: If patch_save_files is false when a patch is installed, the patch cannot be deinstalled. Please be careful when using this feature. For future reference, the contents of the PHKL_30515.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHKL_30515.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_30515.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None