Patch Name: PHSS_13908 Patch Description: s700 10.20 OpenGL 1.1 Revision 1.03 Runtime patch Creation Date: 98/04/08 Post Date: 98/04/13 Hardware Platforms - OS Releases: s700: 10.20 Products: OpenGLRunTime B.10.20 OpenGL 1.0 Runtime Environment Filesets: OpenGLRunTime.OPENGL-DEMO OpenGLRunTime.OPENGL-RUN OpenGLRunTime.OPENGL-SHLIBS Automatic Reboot?: No Status: General Superseded Critical: No Path Name: /hp-ux_patches/s700/10.X/PHSS_13908 Symptoms: PHSS_13908: - See defect description. PHSS_13524: - See defect description. PHSS_12472: - See defect description. PHSS_12459: - See defect description. PHSS_11405: - See defect description. Defect Description: PHSS_13908: - This patch is primarily targetted at both defect fixes and some performance improvements. - Performance Improvements greatly improved display list memory management performance improve validation by inlining sqrt calls improve glDrawPixel performance with ColorIndex format - Defect Fixes fix blend artifacts when software texture mapping fix texture coordinate generation and default values fix sync problem on multiple double buffering processes allow negative fog start/end values PHSS_13524: - This patch is primarily targetted at texture mapping bug and performance fixes with some number of general performance improvements included. Performance Improvements - texture map improvements, hardware support - ReadPixel improvement for certain pack modes and alignments - DrawArraySetHP improvement - buffer swap improvement (allow apps to not wait for retrace) set HPOGL_DSM_ENABLE_FAST_BUFFER_SWAP to enable - cache prefetch in immediate mode set HPOGL_DISABLE_PREFETCH to disable - stippled line validation improvement Defect Fixes - texture map fixes - prelit texture in protocol mode fixed - resize accum buffer corner case fixed PHSS_12472: - new rescale normal extension - new DrawArraySetHP extension - defect fixes: for some fonts the blank character is improperly rendered glReadPixel can sometimes return bad data fixed hang when using display lists with lots of glMaterial calls in select mode lines sometimes return false hits fixed interaction between glxUseFont and X load font GLU has bad version string fix return of gl errors when using protocol mode - NOTE: kernel patch PHKL_13260 should be installed to prevent system hangs. - NOTE: if using texture mapping hardware, this patch depends on PHSS_12470. PHSS_12459: - Fixes problem with Interleaved Array pointers not always being updated correctly. PHSS_11405: - Fragments that lose the alpha test were nonetheless updating the depth and stencil buffers when using VMD/VGL or when texture mapping without TM hardware. - Fixes problem with lines of width < 0.5 not being rendered when using VMD/VGL or texture mapping with no TM hardware. - Fixes problems with writing stencil values in VMD/VGL or when texture mapping with no TM hardware. - Fixes glCopyPixels from incorrectly performing a copy when copying from one color buffer to the other. - Under some corner case timing situations when using indirect contexts with HP OpenGL Release 1.0, incorrect X or GLX error messages can be reported from the X Server. - If a memory allocation error occurs while processing glXUseXFont(), the PixelStore attribute values are not restored as they should be. - VMD/VGL and texture mapping w/o hw texture support could incorrectly clip filled primitives if glViewport mapped NDC to an area larger than the window size. This was causing incorrect rendering and core dumps. - For Release 1.0 of OpenGL, if an X Server is run in multi-screen mode with an HP_VISUALIZE_?X screen and a non HP_VISUALIZE_?X screen, the non HP_VISUALIZE-?X screen will not operate with HP OpenGL unless the HPOGL_FORCE_VGL environment is set in the client environment. - When using occlusion culling the test may indicate that the object was completely occluded when it actually wasn't. This is because we didn't wait for all the pixels to get written before looking at the HW status. - When running in indirect (protocol) mode, large OpenGL replies such as glReadPixels() may fail and generate improper Xlib errors. - Texture coordinates are not getting correctly reset to the default values of 0,0,0,1. - Autogen mipmap memory corruption fix. - If a customer closes one X Display connection that has been used for OpenGL, and then immediately opens and attempts to use another for OpenGL, their application may abort because an attempt is made to access global last context and drawable information that was freed during the close display operation and may have been re-used. - This will fix a small offset that when mipmap selection for filters NEAREST_MIPMAP_NEAREST and LINEAR_MIPMAP_NEAREST. - This will fix mipmap calculation coming very near horizontal or vertical lines. - This will fix texture mapping running over the edge when linear interpolated and using clamp to edge. SR: 0000000000 Patch Files: /opt/graphics/OpenGL/ReleaseNotes /opt/graphics/OpenGL/demos/chess/Data/BlackMarble.ppm /opt/graphics/OpenGL/demos/chess/Data/WhiteMarble.ppm /opt/graphics/OpenGL/demos/chess/Data/Wood.ppm /opt/graphics/OpenGL/demos/chess/Data/bishop.bj /opt/graphics/OpenGL/demos/chess/Data/black_top.bj /opt/graphics/OpenGL/demos/chess/Data/chassis.bj /opt/graphics/OpenGL/demos/chess/Data/king.bj /opt/graphics/OpenGL/demos/chess/Data/knight.bj /opt/graphics/OpenGL/demos/chess/Data/pawn.bj /opt/graphics/OpenGL/demos/chess/Data/queen.bj /opt/graphics/OpenGL/demos/chess/Data/rook.bj /opt/graphics/OpenGL/demos/chess/Data/white_top.bj /opt/graphics/OpenGL/demos/chess/README /opt/graphics/OpenGL/demos/chess/chess.uid /opt/graphics/OpenGL/demos/chess/chess /opt/graphics/OpenGL/demos/chess/crafty /opt/graphics/OpenGL/demos/occlusion_cull/README /opt/graphics/OpenGL/demos/occlusion_cull/ocComplex /opt/graphics/OpenGL/demos/occlusion_cull/ocSimple /opt/graphics/OpenGL/demos/occlusion_cull/screwdriver.gz /opt/graphics/OpenGL/demos/verify.uid /opt/graphics/OpenGL/demos/verify_install /opt/graphics/OpenGL/demos/verify_viewer /opt/graphics/OpenGL/lbin/ogld /opt/graphics/OpenGL/lib/lib2fc1066b.sl /opt/graphics/OpenGL/lib/libGL.1 /opt/graphics/OpenGL/lib/libGL.sl /opt/graphics/OpenGL/lib/libGLU.1 /opt/graphics/OpenGL/lib/libGLU.sl /opt/graphics/OpenGL/lib/libddvisxgl.1 /opt/graphics/OpenGL/lib/libddvisxgl.sl /opt/graphics/OpenGL/lib/libddvmd.1 /opt/graphics/OpenGL/lib/libddvmd.sl /opt/graphics/OpenGL/lib/nls/msg/C/glu.cat /opt/graphics/OpenGL/lib/nls/msg/en_US.roman8/glu.cat /usr/lib/X11/Xserver/brokers/extensions/Glx.1 /usr/lib/X11/Xserver/modules/extensions/hp/glx.1 what(1) Output: /opt/graphics/OpenGL/ReleaseNotes: None /opt/graphics/OpenGL/demos/chess/Data/BlackMarble.ppm: None /opt/graphics/OpenGL/demos/chess/Data/WhiteMarble.ppm: None /opt/graphics/OpenGL/demos/chess/Data/Wood.ppm: None /opt/graphics/OpenGL/demos/chess/Data/bishop.bj: None /opt/graphics/OpenGL/demos/chess/Data/black_top.bj: None /opt/graphics/OpenGL/demos/chess/Data/chassis.bj: None /opt/graphics/OpenGL/demos/chess/Data/king.bj: None /opt/graphics/OpenGL/demos/chess/Data/knight.bj: None /opt/graphics/OpenGL/demos/chess/Data/pawn.bj: None /opt/graphics/OpenGL/demos/chess/Data/queen.bj: None /opt/graphics/OpenGL/demos/chess/Data/rook.bj: None /opt/graphics/OpenGL/demos/chess/Data/white_top.bj: None /opt/graphics/OpenGL/demos/chess/README: None /opt/graphics/OpenGL/demos/chess/chess.uid: None /opt/graphics/OpenGL/demos/chess/chess: None /opt/graphics/OpenGL/demos/chess/crafty: HP92453-02A.10.00 HP-UX SYMBOLIC DEBUGGER (END.O) $R evision: 74.03 $ /opt/graphics/OpenGL/demos/occlusion_cull/README: None /opt/graphics/OpenGL/demos/occlusion_cull/ocComplex: None /opt/graphics/OpenGL/demos/occlusion_cull/ocSimple: None /opt/graphics/OpenGL/demos/occlusion_cull/screwdriver.gz: None /opt/graphics/OpenGL/demos/verify.uid: None /opt/graphics/OpenGL/demos/verify_install: None /opt/graphics/OpenGL/demos/verify_viewer: None /opt/graphics/OpenGL/lbin/ogld: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.13:04:35 $ $Revision: 19980331.16831 $ ogld /opt/graphics/OpenGL/lib/lib2fc1066b.sl: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.12:25:43 $ $Revision: 19980331.11456 $ libddvisxgl.1 /opt/graphics/OpenGL/lib/libGL.1: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.13:04:35 $ $Revision: 19980331.16831 $ libGL.1 /opt/graphics/OpenGL/lib/libGL.sl: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.13:04:35 $ $Revision: 19980331.16831 $ libGL.1 /opt/graphics/OpenGL/lib/libGLU.1: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.13:04:35 $ $Revision: 19980331.16831 $ libGLU.1 /opt/graphics/OpenGL/lib/libGLU.sl: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.13:04:35 $ $Revision: 19980331.16831 $ libGLU.1 /opt/graphics/OpenGL/lib/libddvisxgl.1: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.12:25:43 $ $Revision: 19980331.11456 $ libddvisxgl.1 /opt/graphics/OpenGL/lib/libddvisxgl.sl: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.12:25:43 $ $Revision: 19980331.11456 $ libddvisxgl.1 /opt/graphics/OpenGL/lib/libddvmd.1: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.12:44:56 $ $Revision: 19980331.15528 $ libddvmd.1 /opt/graphics/OpenGL/lib/libddvmd.sl: OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.12:44:56 $ $Revision: 19980331.15528 $ libddvmd.1 /opt/graphics/OpenGL/lib/nls/msg/C/glu.cat: None /opt/graphics/OpenGL/lib/nls/msg/en_US.roman8/glu.cat: None /usr/lib/X11/Xserver/brokers/extensions/Glx.1: HP_GLX Extension Broker $Revision: /main/4 $ $D ate: 1996/10/29 17:09:27 $ OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.13:04:35 $ $Revision: 19980331.16831 $ Glx.1 /usr/lib/X11/Xserver/modules/extensions/hp/glx.1: HP_GLX Extension $Revision: /main/10 $ $Da te: 1996/11/26 16:52:49 $ OpenGL 1.1 Revision 1.05 on HP-UX 10.20 $Date: 31-Ma r-98.13:04:35 $ $Revision: 19980331.16831 $ glx.1 cksum(1) Output: 2639267034 12860 /opt/graphics/OpenGL/ReleaseNotes 2532825095 49168 /opt/graphics/OpenGL/demos/chess/Data/ BlackMarble.ppm 996221197 49168 /opt/graphics/OpenGL/demos/chess/Data/ WhiteMarble.ppm 1032795738 49168 /opt/graphics/OpenGL/demos/chess/Data/ Wood.ppm 3453883977 63382 /opt/graphics/OpenGL/demos/chess/Data/ bishop.bj 381441698 2596 /opt/graphics/OpenGL/demos/chess/Data/ black_top.bj 822686284 19847 /opt/graphics/OpenGL/demos/chess/Data/ chassis.bj 2634535594 56508 /opt/graphics/OpenGL/demos/chess/Data/ king.bj 676604550 56057 /opt/graphics/OpenGL/demos/chess/Data/ knight.bj 2013449535 56467 /opt/graphics/OpenGL/demos/chess/Data/ pawn.bj 4110072861 66886 /opt/graphics/OpenGL/demos/chess/Data/ queen.bj 3716092052 52734 /opt/graphics/OpenGL/demos/chess/Data/ rook.bj 2668702744 2604 /opt/graphics/OpenGL/demos/chess/Data/ white_top.bj 1072295849 4282 /opt/graphics/OpenGL/demos/chess/README 2432395011 24576 /opt/graphics/OpenGL/demos/chess/chess.uid 2163771432 431866 /opt/graphics/OpenGL/demos/chess/chess 739186593 1761800 /opt/graphics/OpenGL/demos/chess/crafty 3449587546 2614 /opt/graphics/OpenGL/demos/occlusion_cull/ README 536359810 98819 /opt/graphics/OpenGL/demos/occlusion_cull/ ocComplex 2978334246 98864 /opt/graphics/OpenGL/demos/occlusion_cull/ ocSimple 1929283584 2419155 /opt/graphics/OpenGL/demos/ occlusion_cull/screwdriver.gz 2397288435 16384 /opt/graphics/OpenGL/demos/verify.uid 1338441258 1255 /opt/graphics/OpenGL/demos/verify_install 2354689162 897716 /opt/graphics/OpenGL/demos/verify_viewer 1152692870 232321 /opt/graphics/OpenGL/lbin/ogld 1981524799 1178234 /opt/graphics/OpenGL/lib/lib2fc1066b.sl 3689683025 1699328 /opt/graphics/OpenGL/lib/libGL.1 3689683025 1699328 /opt/graphics/OpenGL/lib/libGL.sl 122772997 451704 /opt/graphics/OpenGL/lib/libGLU.1 122772997 451704 /opt/graphics/OpenGL/lib/libGLU.sl 1981524799 1178234 /opt/graphics/OpenGL/lib/libddvisxgl.1 1981524799 1178234 /opt/graphics/OpenGL/lib/libddvisxgl.sl 1242858707 775023 /opt/graphics/OpenGL/lib/libddvmd.1 1242858707 775023 /opt/graphics/OpenGL/lib/libddvmd.sl 366412750 2168 /opt/graphics/OpenGL/lib/nls/msg/C/glu.cat 366412750 2168 /opt/graphics/OpenGL/lib/nls/msg/ en_US.roman8/glu.cat 822706253 12310 /usr/lib/X11/Xserver/brokers/extensions/ Glx.1 1507003910 36934 /usr/lib/X11/Xserver/modules/extensions/hp/ glx.1 Patch Conflicts: None Patch Dependencies: s700: 10.20: PHSS_13899 Hardware Dependencies: None Other Dependencies: None Supersedes: PHSS_11405 PHSS_12459 PHSS_12472 PHSS_13524 Equivalent Patches: None Patch Package Size: 10550 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 PHSS_13908 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHSS_13908.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/PHSS_13908.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/PHSS_13908. 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 PHSS_13908.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/PHSS_13908.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None