-------- NOTE!!!!!!! NOTE!!!!!!!! NOTE!!!!!! ---------------- This is a HOT-FIX delivery. It is not recommended to use these binaries on production machines after the main stream patch is released and it is intended for use only with specific VXVM and OS versions as specified: 4.1MP2 on 64-bit Solaris 9 SPARC 4.1MP2 on 64-bit Solaris 10 SPARC The 4.1MP2 release notes outline a new feature introduced: http://support.veritas.com/docs/287682 "The dmp_fast_recovery tunable controls whether DMP should attempt to obtain SCSI error information directly from the HBA interface. Setting the value to on can potentially provide faster error recovery, provided that the HBA interface supports the error enquiry feature. If set to off, the HBA interface is not used. The default setting is off. Before enabling this tunable, make sure the HBA firmware level is supported in the HCL. Enabling this tunable with unsupported HBA firmware levels may result in a system panic." Fixes included with this delivery: e1123248 - addressed two dmp_fast_recovery defects affecting QLogic HBAs, and exposed the tunable to disable dmp_fast_recovery as documented in the MP2 release notes. NOTE: the default is still "on" (release notes incorrectly state default is "off" which will be addressed in the Late Breaking News as well as future patch Release Notes). The instructions below outline how this advanced failure detection mechanism can be disabled, which is also covered in the MP2 release notes. ==================================================================== To replace existing binaries with new hot-fix binaries ==================================================================== 1.) Stop all applications, unmount all filesystems using vxvm, and ensure that vxconfigd isn't running: # vxdctl stop 2.) Verify the prerequisite 4.1MP2 patch is installed: Solaris 9: # pkginfo -l VRTSvxvm PKGINST: VRTSvxvm NAME: VERITAS Volume Manager, Binaries CATEGORY: system ARCH: sparc VERSION: 4.1, REV=02.17.2005.21.28 BASEDIR: / VENDOR: VERITAS Software DESC: Virtual Disk Subsystem PSTAMP: VERITAS-4.1MP2.14:2007-02-21 INSTDATE: Sep 20 2007 21:29 HOTLINE: 800-342-0652 EMAIL: support@veritas.com STATUS: completely installed FILES: 848 installed pathnames 35 shared pathnames 18 linked files 98 directories 417 executables 305494 blocks used (approx) Solaris 10: # pkginfo -l VRTSvxvm PKGINST: VRTSvxvm NAME: VERITAS Volume Manager, Binaries CATEGORY: system ARCH: sparc VERSION: 4.1, REV=02.17.2005.21.28 BASEDIR: / VENDOR: VERITAS Software DESC: Virtual Disk Subsystem PSTAMP: VERITAS-4.1MP2.14:2007-02-21 INSTDATE: Sep 20 2007 21:30 HOTLINE: 800-342-0652 EMAIL: support@veritas.com STATUS: completely installed FILES: 846 installed pathnames 30 shared pathnames 18 linked files 98 directories 410 executables 300757 blocks used (approx) 3.) Make backup copies of the files to be replaced: # mkdir /etc/vx/hotfix_save.d/ # cp /usr/lib/libvxddl.so /etc/vx/hotfix_save.d/libvxddl.so_orig # cp /sbin/vxconfigd /etc/vx/hotfix_save.d/vxconfigd_orig # cp /sbin/vxdmpadm /etc/vx/hotfix_save.d/vxdmpadm_orig # cp /kernel/drv/sparcv9/vxdmp /etc/vx/hotfix_save.d/vxdmp_orig 4.) Install new files from the appropriate subdirectory, and verify checksums: Solaris 9: # cd ./4.1MP2_Sol_2.9 # ls -la /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm -rw-r--r-- 1 root sys 677272 Jan 16 2007 /kernel/drv/sparcv9/vxdmp -r-xr-xr-x 1 root sys 3254016 Jan 15 2007 /sbin/vxconfigd -r-xr-xr-x 1 root sys 1064804 Jan 15 2007 /sbin/vxdmpadm -rwxr-xr-x 1 root sys 1627292 Jan 15 2007 /usr/lib/libvxddl.so # cp ./libvxddl.so /usr/lib/libvxddl.so # cp ./vxconfigd /sbin/vxconfigd # cp ./vxdmpadm /sbin/vxdmpadm # cp ./vxdmp /kernel/drv/sparcv9/vxdmp # ls -la /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm -rw-r--r-- 1 root sys 680056 Sep 20 21:49 /kernel/drv/sparcv9/vxdmp -r-xr-xr-x 1 root sys 3287660 Sep 20 21:49 /sbin/vxconfigd -r-xr-xr-x 1 root sys 1093392 Sep 20 21:49 /sbin/vxdmpadm -rwxr-xr-x 1 root sys 1640776 Sep 20 21:49 /usr/lib/libvxddl.so # cksum /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm /etc/vx/hotfix_save.d/* 627315487 1640776 /usr/lib/libvxddl.so 1999108706 3287660 /sbin/vxconfigd 1605991218 680056 /kernel/drv/sparcv9/vxdmp 3924376517 1093392 /sbin/vxdmpadm 1202102719 1627292 /etc/vx/hotfix_save.d/libvxddl.so_orig 2672936104 3254016 /etc/vx/hotfix_save.d/vxconfigd_orig 3892661021 1064804 /etc/vx/hotfix_save.d/vxdmpadm_orig 1691885207 677272 /etc/vx/hotfix_save.d/vxdmp_orig # Solaris 10: # cd ./4.1MP2_Sol_2.10 # ls -la /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm -rw-r--r-- 1 root sys 688912 Jan 15 2007 /kernel/drv/sparcv9/vxdmp -r-xr-xr-x 1 root sys 3025104 Jan 15 2007 /sbin/vxconfigd -r-xr-xr-x 1 root sys 1064804 Jan 15 2007 /sbin/vxdmpadm -rwxr-xr-x 1 root sys 1627292 Jan 15 2007 /usr/lib/libvxddl.so # cp ./libvxddl.so /usr/lib/libvxddl.so # cp ./vxconfigd /sbin/vxconfigd # cp ./vxdmpadm /sbin/vxdmpadm # cp ./vxdmp /kernel/drv/sparcv9/vxdmp # ls -la /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm -rw-r--r-- 1 root sys 696144 Sep 20 21:49 /kernel/drv/sparcv9/vxdmp -r-xr-xr-x 1 root sys 3060172 Sep 20 21:48 /sbin/vxconfigd -r-xr-xr-x 1 root sys 1002432 Sep 20 21:49 /sbin/vxdmpadm -rwxr-xr-x 1 root sys 1487068 Sep 20 21:48 /usr/lib/libvxddl.so # cksum /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm /etc/vx/hotfix_save.d/* 2318523786 1487068 /usr/lib/libvxddl.so 4218156141 3060172 /sbin/vxconfigd 2335574263 696144 /kernel/drv/sparcv9/vxdmp 4238290299 1002432 /sbin/vxdmpadm 1202102719 1627292 /etc/vx/hotfix_save.d/libvxddl.so_orig 1605169801 3025104 /etc/vx/hotfix_save.d/vxconfigd_orig 3892661021 1064804 /etc/vx/hotfix_save.d/vxdmpadm_orig 153291219 688912 /etc/vx/hotfix_save.d/vxdmp_orig # 5.) Make a copy of the current dmppolicy.info file: # cp /etc/vx/dmppolicy.info /etc/vx/hotfix_save.d/dmppolicy.info_orig 6.) Reboot the system (use "init 6" if using PGR fencing): # init 6 7.) After reboot, confirm the modinfo string reflects the new dmp module: Solaris 9: # modinfo |grep vxdmp 33 780f2000 351bb 235 1 vxdmp (VxVM 4.1_MP2.13+e1123248: DMP D) Solaris 10: # modinfo |grep vxdmp 36 12baf88 350b8 308 1 vxdmp (VxVM 4.1_MP2.13+e1123248: DMP D) NOTE: only columns 3 and 6+ should match, the others will vary. 8.) Optionally set dmp_fast_recovery to off: # vxdmpadm gettune all |grep fast_recovery dmp_fast_recovery on on # vxdmpadm settune dmp_fast_recovery=off Tunable value will be changed immediately # vxdmpadm gettune all |grep fast_recovery dmp_fast_recovery off on # ==================================================================== To back out hot-fix binaries ==================================================================== 1.) Stop all applications, unmount all filesystems using vxvm, and ensure that vxconfigd isn't running: # vxdctl stop 2.) Restore original backup copies saved during the installation step 3 above: # cp /etc/vx/hotfix_save.d/libvxddl.so_orig /usr/lib/libvxddl.so # cp /etc/vx/hotfix_save.d/vxconfigd_orig /sbin/vxconfigd # cp /etc/vx/hotfix_save.d/vxdmpadm_orig /sbin/vxdmpadm # cp /etc/vx/hotfix_save.d/vxdmp_orig /kernel/drv/sparcv9/vxdmp 3.) Verify the checksums: Solaris 9: # cksum /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm 1202102719 1627292 /usr/lib/libvxddl.so 2672936104 3254016 /sbin/vxconfigd 3892661021 1064804 /sbin/vxdmpadm 1691885207 677272 /kernel/drv/sparcv9/vxdmp # Solaris 10: # cksum /usr/lib/libvxddl.so /sbin/vxconfigd /kernel/drv/sparcv9/vxdmp /sbin/vxdmpadm 1202102719 1627292 /usr/lib/libvxddl.so 1605169801 3025104 /sbin/vxconfigd 3892661021 1064804 /sbin/vxdmpadm 153291219 688912 /kernel/drv/sparcv9/vxdmp # 4.) Restore the original dmppolicy.info file into /etc/vx/ directory: # cp /etc/vx/hotfix_save.d/dmppolicy.info_orig /etc/vx/dmppolicy.info 5.) Reboot the system (use "init 6" if using PGR fencing): # init 6 #end_of_README