Patch-ID# 113201-05 Keywords: security vxconfigd vxdmp vxio vxdmpadm asl Synopsis: VxVM 3.2: general patch for Solaris 2.6, 7, and 8 Date: Mar/03/2004 Install Requirements: Reboot after installation Solaris Release: 2.6 7 8 SunOS Release: 5.6 5.7 5.8 Unbundled Product: Veritas VxVM Unbundled Release: 3.2 Xref: Topic: Relevant Architectures: sparc BugId's fixed with this patch: 4148664 4233507 4295380 4414884 4419634 4421145 4466429 4468856 4469908 4479302 4479879 4486602 4487591 4490375 4490646 4490913 4491048 4491411 4491753 4491997 4495696 4501921 4504662 4505737 4505811 4506093 4506689 4510516 4527907 4533901 4545695 4615526 4616042 4627914 4628999 4629246 4629303 4630477 4633949 4634822 4643108 4648109 4655082 4656592 4666269 4671086 4685297 4690002 4693346 4711196 4712148 4712376 4724737 4749183 4753143 4757423 4767258 4769704 4770528 4773633 4775892 4780047 4780146 4784298 4788268 4792191 4793932 4794148 4800160 4817095 4819716 4820436 4822685 4846600 4869501 4874143 4875401 4881620 4882902 4884319 4886361 4886702 4887356 4892981 4900508 4903611 4908473 4911562 4928807 4930738 4937259 Changes incorporated in this version: 4479879 4490646 4773633 4820436 4846600 4869501 4875401 4881620 4882902 4884319 4886361 4887356 4892981 4900508 4903611 4908473 4911562 4928807 4930738 4937259 Patches accumulated and obsoleted by this patch: 111907-06 111908-05 111909-06 112383-01 Patches which conflict with this patch: Patches required with this patch: Obsoleted by: Files included with this patch: /etc/init.d/vxnm-host_infod /etc/init.d/vxnm-vxnetd /etc/init.d/vxvm-reconfig /etc/init.d/vxvm-recover /etc/init.d/vxvm-shutdown /etc/init.d/vxvm-startup1 /etc/init.d/vxvm-startup2 /etc/init.d/vxvm-sysboot /etc/rc0.d/K99vxvm-shutdown /etc/rc2.d/S94vxnm-host_infod /etc/rc2.d/S94vxnm-vxnetd /etc/rc2.d/S95vxvm-recover /etc/rcS.d/S25vxvm-sysboot /etc/rcS.d/S35vxvm-startup1 /etc/rcS.d/S85vxvm-startup2 /etc/rcS.d/S86vxvm-reconfig /etc/vx/aslkey.d/libvxap.key /etc/vx/aslkey.d/libvxatf.key /etc/vx/aslkey.d/libvxeccs.key /etc/vx/aslkey.d/libvxemc.key /etc/vx/aslkey.d/libvxfujitsu.key /etc/vx/aslkey.d/libvxhds.key /etc/vx/aslkey.d/libvxhitachi.key /etc/vx/aslkey.d/libvxlsiinf.key /etc/vx/aslkey.d/libvxnec.key /etc/vx/aslkey.d/libvxpurple.key /etc/vx/aslkey.d/libvxrdac.key /etc/vx/aslkey.d/libvxsena.key /etc/vx/aslkey.d/libvxshark.key /etc/vx/aslkey.d/libvxssa.key /etc/vx/aslkey.d/libvxstorcomp.key /etc/vx/aslkey.d/libvxveritas.key /etc/vx/aslkey.d/libvxxp256.key /etc/vx/lib/discovery.d/libvxap.so /etc/vx/lib/discovery.d/libvxatf.so /etc/vx/lib/discovery.d/libvxeccs.so /etc/vx/lib/discovery.d/libvxemc.so /etc/vx/lib/discovery.d/libvxfujitsu.so /etc/vx/lib/discovery.d/libvxhds.so /etc/vx/lib/discovery.d/libvxhitachi.so /etc/vx/lib/discovery.d/libvxlsiinf.so /etc/vx/lib/discovery.d/libvxnec.so /etc/vx/lib/discovery.d/libvxpurple.so /etc/vx/lib/discovery.d/libvxrdac.so /etc/vx/lib/discovery.d/libvxsena.so /etc/vx/lib/discovery.d/libvxshark.so /etc/vx/lib/discovery.d/libvxssa.so /etc/vx/lib/discovery.d/libvxstorcomp.so /etc/vx/lib/discovery.d/libvxveritas.so /etc/vx/lib/discovery.d/libvxxp256.so /etc/vx/slib/liba5k.so.2 /etc/vx/slib/libg_fc.so.2 /etc/vx/slib/libvxdiscovery.so /kernel/drv/sparcv9/vxdmp.SunOS_5.7 /kernel/drv/sparcv9/vxdmp.SunOS_5.8 /kernel/drv/sparcv9/vxio.SunOS_5.7 /kernel/drv/sparcv9/vxio.SunOS_5.8 /kernel/drv/sparcv9/vxspec.SunOS_5.7 /kernel/drv/sparcv9/vxspec.SunOS_5.8 /kernel/drv/vxdmp.SunOS_5.6 /kernel/drv/vxdmp.SunOS_5.7 /kernel/drv/vxdmp.SunOS_5.8 /kernel/drv/vxio.SunOS_5.6 /kernel/drv/vxio.SunOS_5.7 /kernel/drv/vxio.SunOS_5.8 /kernel/drv/vxspec.SunOS_5.6 /kernel/drv/vxspec.SunOS_5.7 /kernel/drv/vxspec.SunOS_5.8 /opt/VRTSvxvm/lib/libvxvmsc.so /sbin/vxconfigd.SunOS_5.6 /sbin/vxconfigd.SunOS_5.7 /sbin/vxconfigd.SunOS_5.8 /sbin/vxdg /sbin/vxdmpadm /usr/lib/libarray.so /usr/lib/vxvm/bin/egettxt /usr/lib/vxvm/bin/i18n_echo /usr/lib/vxvm/bin/strtovoff /usr/lib/vxvm/bin/vxa5kchk /usr/lib/vxvm/bin/vxapslice /usr/lib/vxvm/bin/vxbadcxcld /usr/lib/vxvm/bin/vxbaddxcld /usr/lib/vxvm/bin/vxbootsetup /usr/lib/vxvm/bin/vxcap-part /usr/lib/vxvm/bin/vxcap-vol /usr/lib/vxvm/bin/vxcheckda /usr/lib/vxvm/bin/vxchksundev /usr/lib/vxvm/bin/vxckdiskrm /usr/lib/vxvm/bin/vxclustadm /usr/lib/vxvm/bin/vxcntrllist /usr/lib/vxvm/bin/vxconfigbackupd /usr/lib/vxvm/bin/vxcxcld /usr/lib/vxvm/bin/vxdarestore /usr/lib/vxvm/bin/vxdevlist /usr/lib/vxvm/bin/vxdevpromnm /usr/lib/vxvm/bin/vxdisksetup /usr/lib/vxvm/bin/vxdiskunsetup /usr/lib/vxvm/bin/vxdxcld /usr/lib/vxvm/bin/vxedvtoc /usr/lib/vxvm/bin/vxeeprom /usr/lib/vxvm/bin/vxencap /usr/lib/vxvm/bin/vxevac /usr/lib/vxvm/bin/vxmirror /usr/lib/vxvm/bin/vxmkboot /usr/lib/vxvm/bin/vxmksdpart /usr/lib/vxvm/bin/vxnewdmname /usr/lib/vxvm/bin/vxparms /usr/lib/vxvm/bin/vxpartadd /usr/lib/vxvm/bin/vxpartinfo /usr/lib/vxvm/bin/vxpartrm /usr/lib/vxvm/bin/vxpartrmall /usr/lib/vxvm/bin/vxprtvtoc /usr/lib/vxvm/bin/vxr5check /usr/lib/vxvm/bin/vxr5vrfy /usr/lib/vxvm/bin/vxreattach /usr/lib/vxvm/bin/vxrelocd /usr/lib/vxvm/bin/vxresize /usr/lib/vxvm/bin/vxroot /usr/lib/vxvm/bin/vxrootmir /usr/lib/vxvm/bin/vxslicer /usr/lib/vxvm/bin/vxspare /usr/lib/vxvm/bin/vxsparecheck /usr/lib/vxvm/bin/vxswapctl /usr/lib/vxvm/bin/vxswapreloc /usr/lib/vxvm/bin/vxtaginfo /usr/lib/vxvm/bin/vxunreloc /usr/lib/vxvm/bin/vxunroot /usr/lib/vxvm/diag.d/config.d/sparcv7/vxautoconfig.SunOS_5.6 /usr/lib/vxvm/diag.d/config.d/sparcv7/vxautoconfig.SunOS_5.7 /usr/lib/vxvm/diag.d/config.d/sparcv7/vxautoconfig.SunOS_5.8 /usr/lib/vxvm/diag.d/config.d/sparcv7/vxdevwalk.SunOS_5.6 /usr/lib/vxvm/diag.d/config.d/sparcv7/vxdevwalk.SunOS_5.7 /usr/lib/vxvm/diag.d/config.d/sparcv7/vxdevwalk.SunOS_5.8 /usr/lib/vxvm/diag.d/config.d/sparcv9/vxautoconfig.SunOS_5.7 /usr/lib/vxvm/diag.d/config.d/sparcv9/vxautoconfig.SunOS_5.8 /usr/lib/vxvm/diag.d/config.d/sparcv9/vxdevwalk.SunOS_5.7 /usr/lib/vxvm/diag.d/config.d/sparcv9/vxdevwalk.SunOS_5.8 /usr/lib/vxvm/diag.d/vxasldebug /usr/lib/vxvm/diag.d/vxaslkey /usr/lib/vxvm/diag.d/vxautoconfig /usr/lib/vxvm/diag.d/vxcheckasl /usr/lib/vxvm/diag.d/vxconfigdump /usr/lib/vxvm/diag.d/vxdevwalk /usr/lib/vxvm/diag.d/vxdmpdbprint /usr/lib/vxvm/diag.d/vxdmpdebug /usr/lib/vxvm/diag.d/vxdmpinq /usr/lib/vxvm/diag.d/vxdmpmod /usr/lib/vxvm/diag.d/vxdmptp /usr/lib/vxvm/diag.d/vxkprint /usr/lib/vxvm/diag.d/vxprivutil /usr/lib/vxvm/lib/vxcommon /usr/lib/vxvm/lib/vxroot.files /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxap.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxatf.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxeccs.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxemc.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxfujitsu.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxhds.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxhitachi.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxlsiinf.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxnec.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxpurple.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxrdac.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxsena.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxshark.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxssa.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxstorcomp.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxveritas.so /usr/lib/vxvm/root/etc/vx/lib/discovery.d/libvxxp256.so /usr/lib/vxvm/root/etc/vx/slib/liba5k.so.2 /usr/lib/vxvm/root/etc/vx/slib/libg_fc.so.2 /usr/lib/vxvm/root/etc/vx/slib/libvxdiscovery.so /usr/lib/vxvm/root/kernel/drv/sparcv9/vxdmp.SunOS_5.7 /usr/lib/vxvm/root/kernel/drv/sparcv9/vxdmp.SunOS_5.8 /usr/lib/vxvm/root/kernel/drv/sparcv9/vxio.SunOS_5.7 /usr/lib/vxvm/root/kernel/drv/sparcv9/vxio.SunOS_5.8 /usr/lib/vxvm/root/kernel/drv/sparcv9/vxspec.SunOS_5.7 /usr/lib/vxvm/root/kernel/drv/sparcv9/vxspec.SunOS_5.8 /usr/lib/vxvm/root/kernel/drv/vxdmp.SunOS_5.6 /usr/lib/vxvm/root/kernel/drv/vxdmp.SunOS_5.7 /usr/lib/vxvm/root/kernel/drv/vxdmp.SunOS_5.8 /usr/lib/vxvm/root/kernel/drv/vxio.SunOS_5.6 /usr/lib/vxvm/root/kernel/drv/vxio.SunOS_5.7 /usr/lib/vxvm/root/kernel/drv/vxio.SunOS_5.8 /usr/lib/vxvm/root/kernel/drv/vxspec.SunOS_5.6 /usr/lib/vxvm/root/kernel/drv/vxspec.SunOS_5.7 /usr/lib/vxvm/root/kernel/drv/vxspec.SunOS_5.8 /usr/lib/vxvm/root/sbin/vxconfigd.SunOS_5.6 /usr/lib/vxvm/root/sbin/vxconfigd.SunOS_5.7 /usr/lib/vxvm/root/sbin/vxconfigd.SunOS_5.8 /usr/lib/vxvm/type/fsgen/fs.d/vxfs/vxsync /usr/lib/vxvm/type/fsgen/vxplex /usr/lib/vxvm/type/gen/vxinfo /usr/lib/vxvm/type/gen/vxmake /usr/lib/vxvm/type/gen/vxmend /usr/lib/vxvm/type/gen/vxplex /usr/lib/vxvm/type/gen/vxsd /usr/lib/vxvm/type/gen/vxvol /usr/lib/vxvm/type/raid5/vxmake /usr/lib/vxvm/type/raid5/vxmend /usr/lib/vxvm/type/raid5/vxplex /usr/lib/vxvm/type/raid5/vxsd /usr/lib/vxvm/type/raid5/vxvol /usr/lib/vxvm/voladm.d/bin/disk.ckinit /usr/lib/vxvm/voladm.d/bin/disk.config /usr/lib/vxvm/voladm.d/bin/disk.deport /usr/lib/vxvm/voladm.d/bin/disk.doinit /usr/lib/vxvm/voladm.d/bin/disk.encap /usr/lib/vxvm/voladm.d/bin/disk.hot-off /usr/lib/vxvm/voladm.d/bin/disk.hot-on /usr/lib/vxvm/voladm.d/bin/disk.import /usr/lib/vxvm/voladm.d/bin/disk.init /usr/lib/vxvm/voladm.d/bin/disk.k-rm /usr/lib/vxvm/voladm.d/bin/disk.list /usr/lib/vxvm/voladm.d/bin/disk.menu /usr/lib/vxvm/voladm.d/bin/disk.mirror /usr/lib/vxvm/voladm.d/bin/disk.name_scheme /usr/lib/vxvm/voladm.d/bin/disk.nohotuse-off /usr/lib/vxvm/voladm.d/bin/disk.nohotuse-on /usr/lib/vxvm/voladm.d/bin/disk.offline /usr/lib/vxvm/voladm.d/bin/disk.online /usr/lib/vxvm/voladm.d/bin/disk.repl /usr/lib/vxvm/voladm.d/bin/disk.rm /usr/lib/vxvm/voladm.d/bin/disk.unreloc /usr/lib/vxvm/voladm.d/bin/disk.vmove /usr/lib/vxvm/voladm.d/bin/exclude.do /usr/lib/vxvm/voladm.d/bin/exclude.list /usr/lib/vxvm/voladm.d/bin/exclude.top /usr/lib/vxvm/voladm.d/bin/include.do /usr/lib/vxvm/voladm.d/bin/include.top /usr/lib/vxvm/voladm.d/bin/inst.allcap /usr/lib/vxvm/voladm.d/bin/inst.allinit /usr/lib/vxvm/voladm.d/bin/inst.custom /usr/lib/vxvm/voladm.d/bin/inst.enclr /usr/lib/vxvm/voladm.d/bin/inst.one /usr/lib/vxvm/voladm.d/bin/inst.quick /usr/lib/vxvm/voladm.d/bin/inst.show_prog /usr/lib/vxvm/voladm.d/bin/inst.top /usr/lib/vxvm/voladm.d/lib/vxadm_lib.sh /usr/lib/vxvm/voladm.d/lib/vxadm_syslib.sh /usr/sbin/host_infod /usr/sbin/srvm_setup /usr/sbin/vxassist /usr/sbin/vxclust /usr/sbin/vxdco /usr/sbin/vxdctl /usr/sbin/vxddladm /usr/sbin/vxdg /usr/sbin/vxdisk /usr/sbin/vxdiskadd /usr/sbin/vxdiskadm /usr/sbin/vxdiskconfig /usr/sbin/vxedit /usr/sbin/vxibc /usr/sbin/vxinfo /usr/sbin/vxinstall /usr/sbin/vxiod /usr/sbin/vxmake /usr/sbin/vxmend /usr/sbin/vxnetd /usr/sbin/vxnotify /usr/sbin/vxplex /usr/sbin/vxprint /usr/sbin/vxrecover /usr/sbin/vxrelayout /usr/sbin/vxrlink /usr/sbin/vxrvg /usr/sbin/vxsd /usr/sbin/vxspcshow /usr/sbin/vxstart_vvr /usr/sbin/vxstat /usr/sbin/vxtask /usr/sbin/vxtrace /usr/sbin/vxvol /var/sadm/pkg/VRTSvxvm/install/preremove Problem Description: NOTE: VERITAS Incident Numbers are included in parenthesis. 4479879 (116784) vxdiskadm option 20 (yes) will change disk status from "error" to "offline" 4490646 (114693) Various issues with vxdmpadm usage messages and man page 4773633 (96801) CVM: vxconfigd: WARNING: library and vxconfigd disagree on existence of client 4820436 (128610) VM/licensing functionality is not fully enabled in leadville configurations 4846600 (129377) NODE_EXPLICIT and DMPNODE_EXPLICIT not get reset after migration 4869501 (108322) (131368) CVM: VOLOBJ_MV_FIRSTW flag incorrectly remains set causing close to hang 4875401 (126492) vxedit rename can degrade performance of VM 4881620 (131823) VxVM: VM is recognising disks from other ( V880, 3510 etc) enclosure as SENA disks 4882902 (128502) vxconfigd coredumps when photon enclosure is replaced due to NULL pointer 4884319 (136641) S85vxvm-startup2 will copy new shared libraries while vxconfigd is running 4886361 (131823) VxVM: VM is recognising disks from other ( V880, 3510 etc) enclosure as SENA disks 4887356 (138553) CVM/SC30: Moving of quiesce ioctl to step1 to modify the join behaviour 4892981 (126223) vxassist mirror fails to mirror vlumes of size >1TB 4900508 (133579) Update VxVM JBOD info to include non-Seagate JBOD FC disks 4903611 (134055) Unwanted console messages for plexes/volumes on CVM Master node 4908473 (128878) CVM: Oracle Resilvering: Need to not duplicate effort in setting MR mode 4911562 (100379) VxVM: Diskgroup creation is failing if two vxdg commands are given simultaniously 4928807 (136853) After installation of patch - some libraries cannot be linked 4930738 (118641) vxconfigd coredumps when running "vxdg -g -k rmdisk diskname" 4937259 (128878) CVM: Oracle Resilvering: Need to not duplicate effort in setting MR mode (24329) vxconfig help message incorrect (34523) Need to increase VOLD_MAX_REQUEST to handle larger szie request to vxconfigd (81289) vxrecover does not output appropriate errs and always has 0 return code (101657) Replacing a disk can violate a photon array license (105230) SOLARIS 9: pkgrm VRTSvxvm panics the system (106277) vxassist maxsize|make takes more time to complete (15Hr sometimes) (113157) vxconfigd core dump due to stack corruption caused in dg_creat_internal() (118770) panic in scsi module during pkgadd (123003) volume stuck in SYNC with no sync action (123102) Race condition may lead to 'vxdmpadm disable ctlr' hangs due to missing signal from 'gendmpiodone()' (123806) FMR2: multiple snapshots of a volume taken in the same command are not tracked correctly (123974) T3 support: DMP need to use FNDELAY to allow sense data to be captured (125951) VM re-encapsulate root fails silently and system unbootable if vtoc already has private slices (127515) CVM fmr/fmrlogsz.tc fails occasionally with master message (128216) vxrecover core dumps if given non-existent object as input. (128378) GLM slave node stuck in vxg_api_deinitlock via volcvm_gab_joindone (128434) rem_drv exit status may not be reliable (128571) potential deadlock in vxdmpadm enable path (128983) vxdisksetup is giving "UNKNOWN ERROR WHILE WRITTING VTOC" when publen and privlen specified (129080) memory not unmapped after a mmap in crc_file() (129174) According to Sun, VxVM 3.2p4 can not depend on Solaris patch 108827-XX (129295) Sol: encapsulation does not check for rootvol in the group (129462) FMR-CVM - Map manipulations are not properly interlocked with I/Os on slave (129629) VxVM is not starting with VE_LOG_BAD error on second reboot after 3rd mirror break off from rootvol. (130324) Unwanted dmp debug messages are periodically appearing on console (130774) FUJITSU claim_device: fjget_path_mode failure (131595) Cannot set spare flag via vxdiskadm. dmname "d1" matches daname of c#t#d1ds2" (133070) The Fujitsu-Siemens Primepower arrays no longer have the eeprom set properly when encapsulating (133481) vxvol core dumps in common_start_resync (134236) vxassist relayout not handling VE_RESTART at all places (134510) CVM: neighbor field not set properly after a reconfiguration in certain conditions (134946) Sol: SENA is not recognised when MPxIO is enabled on the machine (135454) vxsync: /etc/mnttab: Too many open files (135682) Data corruption with DRL if system crashes before klogging plex detach (136128) Hitting dmp_io_failed_threshold should log a console message (136224) dmp_io_failed_threshold default of 600 seconds is dangerous (136404) No primary path failback happens with A/PG arrays. (137176) TED assert when doing an IO from a slave in vol_open_device (137452) Snapshot of multiple volumes with ufs and vxfs atop yields error msgs (137641) vxconfigd core dumps in dmp_get_exclude_info() due to NULL pointer reference (137670) TED_ASSERT in vol_open_device and vol_close_device are not needed (138205) CVM: slave join fails due to unexpected change in errno value (138285) IBM SANVC luns with VPATH behaving unpredictably on Solaris VM3.5 and VM 3.2 (138389) performance degradation while running a volume sync (138740) copystr() should handle errno == EAGAIN and ENOMEM from xcopy(). (139796) vxcheckasl giving Error opening shared library libvxsena.so (from 113201-04) 4886702 Patch 113201-03 (VXVM3.2) has a dependency on an obseleted patch (from 113201-03) 4233507 (73476) vxvm should periodically dump disk group configurations to a file 4421145 (61755) typo in vxdmpadm help output for option getsubpaths 4487591 (76135) vxddladm man page should describe ddl better 4479302 (95151) modified libvxvm_get_disks() in libvxvmsc.so 4486602 (118007) vxinstall does'nt display "excluded disks" message for disks in enclosures 4490375 (82309) vxddladm excludearray vid/pid shouldn't indicate entire library has been excluded 4490646 (114693) Various issues with vxdmpadm usage messages and man page 4491048 (114033) man page for vxbootsetup refers to 'disksetup' and 'edvtoc' instead of 'vxdisksetup' and 'vxedvtoc' 4491997 (76135) vxddladm man page should describe ddl better 4501921 (113692) vxunroot does not work as documented 4506093 (81823) CVM: vxdg -k rmdisk fails 4527907 (115102) request to backport fix from 94043 to 3.2 and 3.1.1 4628999 (94225) Excluded pathnames were displayed contiguously in a single line 4629246 (114060) man page for vxplex is incorrect for the 'cp' section ; volume should be enabled not disabled as documented 4629303 (113193) Cannot change log types from DRLSEQ back to region (DRL) 4630477 (101371) bogus device in `vxdisk list` output after replacing a disk drive 4643108 (117826) Document that 3.2 patches are common for all localizations 4648109 (43033) SOL: dmp_per_cpu_stats_t should be 128 bytes long 4655082 (98658) vxmirror using Sun StorEdge S1 drives create incorrect root devaliases (vx-rootdisk and vx-disk01) 4656592 (108677) CVM volumes disabled after scshutdown and boot up on all cluster nodes 4671086 (110341) CVM: SUNW wants vxclust to not start vxconfigd with logging 4685297 (100354) world writebale files in /var/vx/ and /etc/vx - permissions need to be modified 4711196 (114288) Encapsulation creates a public region which overlaps private region 4712148 (121955) vxdiskadm #6- cannot mirror rootdisk to an enclosure based /name target disk with 3.2patches 4712376 (118011) Strange notification mesg from vxconfigd when enabling MPxIO ( atf vendor_info: readlink fails ) 4749183 (112049) With just Photon license (98) - RAID5 log on a non-photon disk is allowed 4753143 (109148) VxVM does not generate photon license with MPxIO enabled 4757423 (115645) VxVM vxassist -H indicates "Incorrect usage" 4767258 (112554) vs_pl_cnt (vol_summary's field for plex count) gets negative values on SLAVE when using vxmake to create sd/plex/vol and then deleting the volume 4769704 (114479) Request for relevant error messages: specifically when vxdiskadm option 5 is used on duplicate disk ids 4770528 (111945) vxdiskadm option 5 - need to explicitly specify device_name usage ;erroneous error message and output format 4775892 (102494) '/usr/sbin/prtconf: getexecname() failed' on system bootup 4780047 (112593) Incorrect devalias boot path on Jasper HBA 4780146 (112279) Problems with enclosure based naming after replacing physical disks 4784298 (93770) vxdiskadm (disk.mirror) cannot mirror disks with enclosure based naming 4788268 (124695) CVM: disk group autoimport flag is turned off after Master takeover 4792191 (70508) 'vxdisk list' should display the disk to enclosure relationship 4793932 (117922) Add to VM 3.2_p4 README info about 3.2_p3 disabling VM because Photon license is no logner free on a SunFire V880. 4794148 (28606) VxVM does not correctly set dump device 4800160 (115323) vxddladm during VxVM 3.5 vxinstall takes an unusual amount of time on hosts with maserati devices 4817095 (118065) Loss of storage connectivity to CVM master causes all nodes to get I/O errors 4819716 (118003) man page for vxdisksetup needs to be updated with information about 'old_layout' option 4822685 (118015) "vxdisk list" does not report multiple failed/removed disks correctly (24412) subvolume SIO's not being freed (55730) rootability error msg with vxunroot (66749) pkgchk VRTSvxvm error; vxserial not properly linked to vxlicense (71594) VM - hitachi 5800 (DF400-F) os warning msgs with vxdctl enable (72972) VVR: vxprint -lP does not print the correct protocol for older DGs < 90 (73964) VVR vxassist relayout of an srl should not be allowed (84648) mread ioctl is making kernel to panic (88790) DMP doesnt migrate disabled other_disk dmpnodes properly after they become available (90840) vxrelayout dumps core with Segmentation Fault when striping column (91319) vxinstall not allowing an enclosure name to be renamed (93840) the requirement of stopping and starting the whole layered volume (94409) VVR Secondary panic during tcl's (95032) SOL: vxdmpdebug failing with "adb: failed to read from address 0: no mapping for address" (95665) vxdisksetup needs a slice 2, but doesn't detect if its not there (96437) Occasional 'vxddladm addjbod....' core dump (97089) dmp macros not dumping the last dmp node in lvl1_tab (97192) ddl_add_support() ought check return value of ddl_vendor_info() (97270) VVR: vxrlink stats shows negative stream errors (97656) VVR : TCP : RT(usec) should be changed to RT(msec) in rlink stats output (99600) vxdiskadm - adddisk option failed to add disk into the shared DG (101025) Mirroring fails on disk when enclosure name is in used (102668) VM - array.info file is set @ 555 permissions (102738) Make vxassist use SAL XML spec 1.2 to work with SPC 2.1.1 onwards (102913) subcmds "mirror" and "move" and others in vxassist hit VE_NOTRANS sometimes (103649) Volume badlog flag set to 'on' , with valid log subdisk available (104742) vxasldebug uses absolute pathnames to tar up /etc/vx/lib/discovery.d/* (105234) drl: vxassist -o ordered make requires logdisk arg too, contrary to sag doc (105598) vxdisk list fails if disk media name is similar to a non-existant CTD device (105659) FMR2 - Do not allow the resize of DCO volume (105946) VVR: rlink disconnects while doing autosync. (106277) vxassist maxsize|make takes more time to complete (15Hr sometimes) (107746) VVR: vxrvg recover takes long time since SRL header is not flushed. (108389) i/o hang on volumes with drl (108422) vm is trying to create volume even if fmr licence is not there (108441) vxprint taking a very long time to complete (108867) vxconfigd dumps core during 'vxdctl enable' after pulling out a cable from a SENA AA array (109231) plexes with SNAPDONE state are not detached on i/o error (109656) Panic in hitachi_failback_lungroup for HDS A/P 9200 Array with VxVM (109778) CVM support for Hitachi 9500 DF600 APG (109851) vxassist convert applying wrong trigger pt and not checking for simple volume (110265) VVR: associating a volume after role-reversal leads to config error (110319) VVR: Remnant config info on secondary after primary rvg is deleted can cause data corruption (110508) VVR: Panic in nmcom_server_start due to NULL msgb returned by kmsg_sys_rcvudata (110536) VVR: Data loss in autosync of vol w/regsz > 512 blks & rlink discon/connects (110742) Having problem adding disks to an existing shared diskgroup using vxdiskadd (110851) panic in dmp_migrate_node() routine (111119) Multipathed rootdisk will fail to import with 'duplicate diskid' message, in VM 3.2_p2 and above. (111143) VVR : changing packet_size during replication leads to data corruption and/or panic (111288) postinstall script does not update library file list for pkgchk (111894) ROUND read policy not used anymore when a plex is detached (3-plex volumes) (112517) vxsync errors needs to be changed to a warning (112686) VVR : replication hangs if packet_size > 65504 is set and an io of size >= 64K is given (112770) SCSI version for SENA disks does not come correctly (113279) pkgrm -R should not unload (local) vxvm modules (113838) vxassist getting error message when using the '-o ordered' option (114633) vxrelocd fails after switching to enclosure based naming (115325) VVR: vxrlink att fails displaying negative number for volumes over 1TB (115520) vxconfigd dumps core in dmp_get_events () for DMP_DA_ADD_EVENT if the enclr is not present in the attr_list (115607) VVR: Panic in vol_dcm_set_region during DR testing. (115771) vxdg deport hangup after dg disable (116105) panic while creating a snapshot of raid5 volume (117013) Inappropriate error message with vxdisksetup on an invalid device (117388) Panic and filessytem corruption after doing "rm *" during a raid5 sd move operation (117568) use this incident to detect and fix mem leaks in vxconfigd (118064) FMR: ted assert _vol_syncwait:1a in voldco_reset_state (118172) relayout fails with VE_DG_VERSION even though dg version is at 80 (118186) vxtrace help does not explain all options of the command (118243) Change LUN ownership support for Fujitsu GR710, GR720, and GR730 arrays (118609) vxbootsetup prints error message test: argument expected (118770) panic in scsi module during pkgadd (119565) DMPNODE not migrated when array type changes (119864) panic in dmp_dev_t_to_nodep() (119998) relayout (in 3.2p3) can exhaust dg config space (120377) memory leak in (vxconfigd) priv_scan () during diskgroup import (120459) update modinfo and pstamp for VM 3.2t Patch 4 (120808) VxVM 3.2p3 vxvm-startup2/vxreattach performance degradation on boot for large configurations (120830) Generic support of A/P arrays in CVM/DMP (121428) pkgrm runs w/minor complain when removing VM 3.1.1 for an upgrade (121957) vxconfigd core dumps while doing bascii_copy() in a5k_get_da_sno with SunAP 2.3.1 (121962) vxconfigd is exiting with symbol strfind:referenced symbol not found error. (122528) vxdctl enable hangs in ddladm3.tc hangs on latest 3.2. (122982) patchadd fails because of a typo (122984) preinstall fails as required SUN patch is superseded (123311) VM: vxconfigd -m disable gives core (123974) DMP need to use FNDELAY to allow sense data to be captured (124315) inst.top.sh refers incorrectly to JBOD and OTHER (124991) vxconfigd dumps core during zrelayout/crash_dbg.tc (from 113201-02) Readme changes and rebuild. (from 113201-01) 4295380 (28606) VxVM does not correctly set dump device (63819) ./scripts/admin/volprint/t_flag.tc#1 FAILS on debug only (66490) ddl should remove the second path info from vxdisk list after the array has been claimed under JBOD0 by the vxddladm addjob operation (74919) r5log.tc#8 failed (75389) Unable to remove a disk containing only a subdisk and/or plex (76246) CVM: one node won't join after master panic in a 4 node cvm cluster (76502) VVR: vxibc_unfreeze.tc fails and rlinks go connect/disconnect. 4148664 (76636) root disk encapsulation should fail when bad license key used 4874143 (78526) vxevac not handling subdisk states manipulated by user correctly (80615) mirrored volume is not disabled when it lost the last ACTIVE plex during resync (81182) dmp restore daemon's 'skip controller decision' in check disable policy (85883) vxencap.sh fails on Solaris 2.6 after fstyp to non-existent slice (87807) I/Os stuck in VxVM I/O mempool waitq 4633949 (87863) VxVM 3.2 gives free PHOTON license on V880 system (87931) RECORD fragmentation may lead to missing of record becuase of the block (87968) FMR: Data corruption if m/c crashes after DETACH klog, and before accumulator update (87975) vxdmpinq - add support for detail display of scsi inquiry data (89014) vxunroot does not work when /usr/local on disk (89095) vxconfigd out of memory; vx commands get "Memory allocation failure" (89170) Policy to handle duplicate diskids (90069) DDL: ASL packaging changes (90710) replacing a disk when we have multiple DRL's does not clear FAIL state (90828) ../switchout/raid5/volsd/mv/io_fail_dbg.tc#2,#5 fail on ga3.5_maint (91698) vxdisksetup -i uses -f option of vxdisk (91793) CVM callout table flooded on single CPU machines (92157) Luns>10 assigned to wrong controller on the HDS 9200 array (92232) kernel/ioctls/lv_oradrl.t fails when vol_maxio tunable is increased (92350) coverage/coverage_F.tc#2 fails when vol_maxspecialio tunable increased (92524) CVM: DCO update protocol does not handle cluster reconfiguration properly (92581) vxunroot does not convert all volumes to partitions (92817) incorrect argument passed to sema_p 4504662 (93080) vxdisk list reports disk status incorrectly (94911) vxvm is excluding a disk that not specified in vxvm.exclude (94958) VVR ./stress/autosync_largevol.tc#13 hung primary node (95241) vxeeprom creates incorrect boot-device string for a5k (95545) CVM two nodes of a 8-node cluster never join - master vxconfigd gets 'kernel_fail_join' error and hangs (96137) "vxdg -k" should be prevented on encapsulated rootdisk, otherwise system will be unbootable (96364) VVR: vxrlink pause hangs for Secondary rlink (97339) 32p2.5 - mirroring fails w/errors on a smaller target disk (97508) DISK-SUBSYSTEM entries on XP array shows up in "vxdisk list" (97600) ATF issue with boot volume on CLARiiON FC4700 (97947) VVR: vol_rp_ack_timeout should check the first sio for timeout. (98045) vxassist relayout does not preserve usetype gen (98221) VVR: Replication hung while running autosync_rlinks.tc (98366) VVR: dcms on stripe-mirror volumes not working properly (98486) "vxassist make" fails to create volume with VE_NOTRANS (98880) vxassist make of mirrored multi-col volumes should initialize cols in parallel (98891) VVR : memory leak (99015) vxunroot doesn't remove those commented entries in /etc/vfstab (99087) VVR: Replication hangs because rp_config_status.done field gets cleared during transaction (99216) Initiator hang when disable the primary controller (99611) stress/vmconfig/vmconfig05_dbg.tc fails to cleanup properly 4666269 (99652) Why Volume Manager needs to forceload SUNW,isptwo? 4693346 (99652) vxvm 3.2 tries to forceload non-needed drivers on 2nd reboot of boot encapsulat. (100170) After vxinstall, swap device is not being set, on boot getting "cannot open /etc/vx/reconfig.d/saveconf.d/swapdev". (100375) VVR: Replicas differ after Primary failover during resync (100581) Add CVM support for Hitachi A/P arrays 4690002 (100715) Upgrade fails. upgrade_finish dumps core (100852) VVR: rlink disconnect due to ack timeout on update message (100866) Sol+cfs+stress+reconfig fails to make progress due to thread stuck in vol_kmsg_send_wait. (101177) vxreattach recovers disks with duplicate ids (101343) 3.2 vxinstall could cause mismatch between publen and partition table (101637) memory corruption in vol_dump_disks (101825) CVM SC3.0 vxclust step2 poll timeout prevents third node from joining (102509) upgrade_start doesn't handle enclosure name on rootdisk. (102642) VVR hdr/dcm-header does not flush after srl overflow (102777) vxdisksetup fails if disk access name matches an existing disk media name (103005) vxassist mirror sometimes fails silently (103206) Data coruption in FMR (102132) (103454) In vxdiskadm (option 5) cannot replace a failed pre-3.2 disk with new disk layout (CDS), because of smaller publen. (103807) vxassist dumps core. (104091) VM: Quick Install in vxinstall does not exit properly if no disk were selected. (104177) ASL: ASL packages are modifying /etc/vx/aslkey.d and /etc/vx/lib/discovery.d directories from 755 to 775, (104246) DMP issues with VM 3.1.1 and SAN appliance (104384) diskgroup import is slow for configuration with large number of disks (104438) vxplex fails to use FMR to resync offline plex (104444) mirroring of root disk failed (104541) CVM/FMR vxsync never worked in a cluster (104656) Group failover failure due to determining incorrect num_luns on a controller (104673) ASL: vxasldebug command fails with "cannot create" error message, DATE is incorrect. (104815) Add Solaris 9 support to ga3.2_maint (104926) vxassist make logtype=drlseq silently fails to make DRL (105116) VXVM 3.x hotspare of rootdisk fails if disk failure is after a controller failure 4724737 (105185) libvxvmsc.h header file missing from VRTSvxvm package (105375) CVR for rusio iocount is incremented but never decremented (105447) libvxvmsc library file is missing in 3.2p2. Need to make sure it is in 3.2p3 (106045) increase VOLDIPC_MAX_FD to avoid VxVM commands hang (106379) vxdg adddisk allows duplicate diskid in DG (106396) System panics during SPFS array cable pull testing (103917) "vxassist make" fails with VEX_TIMEOUT (104916) VxVM on Solaris: Timeouts using lbolt can be too short (106379) vxdg adddisk allows duplicate diskid in DG (106401) update modinfo and pstamp for VM 3.2t Patch 3 (106695) Error message due to RDAC device (106793) vxdisk list gives wrong info on ATF/4700 array (106879) vxunroot fails to see any other vols than / swap usr opt var home (106907) VxVM doesn't sync the whole plex after replacing disk (107261) I/O stops after a drive was pulled on RAID5 volume (107284) Possible wrong I/O count on objects because of not handling dg_objcpulist correctly (107382) FMR2: a system crash after a disk is replaced by some other disk may result in data corruption. (107473) SNAPDONE plexes are not resync'd after a crash (107656) vxinstall should remove install-db if just using old configuration (107841) update modinfo for pointpatch (108091) Panic during encapsulation of an AP controlled bootdisk in VM3.2 (108138) FMR doesn't resync properly after disk replacement (108162) vxassist dumps core during relayout (105121) vxrelayout fails with error: record already exists (109051) ../kernel/vxdmp/aa/vol_disable_dbg.tc#1 failing on 3.2_p3 (from 112383-01) (90533) CVM volume stuck in NEEDSYNC for SC3.0 (from 111908-06) (103206) Data coruption in FMR (102132) (103209) update modinfo and pstamp for point patch for 3.2t_p2.5 to contain incident 103206 (from 111908-05) Solaris 7 version of 111907-06. (from 111909-06) Solaris 8 version of 111907-06. (from 111907-06) Patch readme updates. Incident list below from 111907-05. (from 111909-05) Solaris 8 version of 111907-05. (from 111907-05) (29953) vxassist help space shows incorrect numbers (30225) No need to call vol_mv_stable_reserve() if not stabilizing (31590) EMC:libarray.so stub library has inconsistent return codes (32999) EMC: vxinstall fails while adding all disks (35074) EMC: vxdg deport/destroy allows you to deport DG with BCV attachments (43263) General updates and corrections to VM man pages (49711) SRVM: Application hangs when doing writes on a detached rlink. (50206) EMC: vxassist move fails for volumes on non-EMC disks with verify option (58021) EMC: Incorrect use of vxsym_errno in vxvm (60034) EMC: Support new options in vxdiskadm, vxdiskadd, vxresize, vxrootmir and vxmirror (60732) Check-in DDL and independent device naming man pages for 3.2 release (61829) root disk encapsulation program corrupt the partiontion table. (70415) DMP cannot hardcode pub/priv partitions (70611) fix vxencap issues found during testing for normal disk (71336) VVR: vols go into SYNC state during recovery if rvg is in PASSTHRU mode (71362) vxnotify does not send event notification at time dmp path os disconnected (71613) VVR TC: vvrtc failure on the latest build (72734) VM 3.2p - The man page for vxddladm and the vxddladm help text do not match well (72853) VVR panic on secondary during mrs_recover.tc#1 (73510) problems with dcm and layered volumes (73836) VVR: rlink enabled even if it was detached when there's srlheader error (74085) Add DDL support for Fujitsu arrays (76063) Upgrade process does not comment out VxVM volumes in /etc/vfstab (76498) USETYPE of var,usr,opt changed to gen in vxvm 3.1.1p2 after using vxinstall to encapsulate the boot disk (76940) VX_GET_IOPARAMETERS ioctl returns invalid dev_t on cvm slaves (77239) importing a diskgroup with a duplicate dgid doesn't generate error (77259) VVR: ted assert when running aixvm/tot_merge on solaris. (77987) No more lite license without a key (77993) VVR: SRL failure may result in inconsistent data (78595) EMC: P3A: device group should be renamed whenever a diskgroup gets renamed (79563) switching to enclosure based DA names creates duplicate records. (79655) CVM: ora.tc consistently hangs on 4 node GAB cluster (79735) FMR2:Crash recovery for snapstart (80587) VVR: vxrvg -M makeprimary doesn't work properly (80735) VVR : panic on solaris while running srvmtest on tot (81083) FMR:panic from snapprint in 3.2 (81763) EMC: Update the Testplan for handrun TCs and correct some TC scripts (81867) vxstat -i should flush stdout (82369) FMR:vxassist fails silently to remove a dco log volume (82974) VVR: Too many memory errors on draining SRL when using TCP 4506689 (83191) vxdiskadm replaces disk but errors with UNKNOWN ERROR WHILE WRITING VTOC (83351) libfdisk is out (83386) vxprint -e takes long time to execute (83557) Panic in do_xor() because of alignment error (83719) change SIG dependency name in VxVM spec file (83724) Support for new licensing utility package. (83928) FMR2: Proper cleanup to be done while aborting a snapstart and snapback (84371) P3A: the DGSJ of the Toolkit operated disk groups need device-group reconfiguration as well (84375) vxassist snapprint doesn't work when a disk group is split (85139) Data corruption problem in FMR (85288) changes reqd for code that creates /dev/vx/rdmp /dev/vx/dmp links 4533901 (85333) VxVM and AP231 co-existence fails. (85460) VVR : TCP : should free conn_req in case not able to alloc conn_ret (85560) vxdisksetup gives confusing error message (85908) VVR : nio_usec_tstamp can overflow and become -ve. (86160) vxdmpadm -f disable path=c#t#d#s2 prints incorrect error about NON-rootdisk, saying it IS a rootdisk (86164) If an operation in vxdiskadm fails and nothing is changed we should not run 'vxdctl enable' when exiting. (86291) VVR: Replicating betn. diff VVR vers results in connect/disconnect (86340) added disks are not updated (86594) Wrong stats maintenance in voldisks (87403) VVR: panic in nmcom_get_checksum if packet_size of rlink is not 4 byte aligned. (87461) removal of a device from a STD dg which is attached to a BCV dg was successful with enclosure based naming scheme 4616042 (87645) VxVM is not detecting all slices created on T3B with T3B_FW2.1 (87821) DDL: Built-in ASLs of VxVM should build under VRTSasld also (88585) vxdmpadm getdmpnode nodename (88847) vxconfigd panic with alignment error, when dmp_debug_level set to 9, gen_aa_select_path 4505811 (89089) 3.1.1/3.2: /etc/rcS.d/S85vxvm-startup2 should copy additional libraries 4545695 (89089) VERITAS Volume Manager commands may break after upgrading to Solaris 8 Update 7 or installing Patch 108827-15 or Later 4627914 (89089) vxvm-startup2 vxvm 3.1.1 does not copy all vxvm required libraries 4634822 (89089) VXVM-patch should copy needed libraries upon installation (89399) Arithmetic exception with relayout on large stripe width plex (89428) VVR: srl is inconsistent but rlink is not detached (90451) ADB macros used by VRTSexplorer need updation to collect complete dmpdb (70904) vxedit -v set owner=xxxxx doesn't work in Volum Manager 3.1.1 (80961) vxdmpadm listctlr all and getsubpaths dmpnodename lists the CTLR-NAME incorrectly after enabling MPXIO 4615526 (83140) voladm_get_disk_dmname routine uses bogus default disk (85892) VVR io stops at 99% full srl in asyn with dcm (85994) VVR: Disallow associating an open volume to a secondary rvg (85998) VVR: Disallow attaching a secondary rlink if any associated data vol is open (88498) FMR - performance improvement in DCO updates (88545) VVR: Disallow associating an open volume as SRL (88794) io error on a volume while doing 'vxdisk scandisks' after 'vxddladm includearray libname=xxx' (89170) Policy to handle duplicate diskids (90335) dd hangs when cable is pulled from hitachi 9200 array (90471) ddl and dmp APIs should close files/devices opened before return (90533) CVM volume stuck in NEEDSYNC for SC3.0 4545695 (90583) vxconfigd core possiblity: memcpy may read past the end of the source string (90728) ATF: VxVM does not see the failed over ATF LUNs after rebbot (90956) update modinfo and pstamp for VM 3.2 Patch 2 (91452) SEAGATE/HITACHI devices should be added as JBOD in postinstall scripts for Solaris (92725) VVR vol_rp_delete_port panic during mrs_recover.tc#1 (92921) VVR Primary node hangs during ./scripts/offhost/offhost3.tc#2:offhost-backup-2: (93035) VVR: KMSG/TCP: Add support for option management -- kmsg_sys_optmgmt (93127) VVR: TCP: Increase snd and recv buffer space to improve performance (93493) always add SUN Vicom arrays as jbod (93495) update modinfo and pstamp for point patch for 3.2p1 to include 90533 (from 112213-01) 4616042 (87645) VxVM is not detecting all slices created on T3B with T3B_FW2.1 (56510) the current certified version of ATF 1.3.1 with DMP is too old (from 112207-01) (56510) the current certified version of ATF 1.3.1 with DMP is too old (from 111908-04) Solaris 7 version of 111907-04. (from 111909-04) Solaris 8 version of 111907-04. (from 111907-04) (43263) General updates and corrections to VM man pages (56510) the current certified version of ATF 1.3.1 with DMP is too old (70611) fix vxencap issues found during testing for normal disk 4419634 (77622) VxVM - concat-pro & stripe-pro volumes do not align subdisks on cylinders. (78995) vxencap man page doesn't describe [-s priv_reg_len] (79028) vxbootsetup man page should refer to troubleshooting guide for the 'Recovery from Boot Disk Failure' chapter (79477) remove bogus messages while building VRTSvxvm rpm (79845) update modinfo and pstamp for VM 3.2t Patch 1 (81395) Man page changes requested by Japanese l10n (82247) 3.2p1 - cannot remove/replace failed rootdisk via vxdiskadm (82965) pids for daemons have changed in 2.4.9 (83010) New version of rpm splits rpm and rpmbuild (83243) VM32p1.4 - upgrade_finish fails to restore VM configuration (83257) Under certain configuration, vxconfigd can core dump when doing enclosure renaming (83351) libfdisk is out (83698) 3.2tp1.5 causes hds5700 to migrate from HITACHI to other_disk category. (83711) vxvm-reconfig tries to cat non-existing files (from 111908-03) Solaris 7 version of 111907-03. (from 111909-03) Solaris 8 version of 111907-03. (from 111907-03) (58257) vxio and dmp drivers must fail insane disks without retrying i/o to them (72742) VM 3.2p beta: unable to mirror rootdisk via vxdiskadm (79845) update modinfo and pstamp for VM 3.2t Patch 1 (82076) Addition of new path is failing in 9200 array (from 111908-02) Solaris 7 version of 111907-02. (from 111909-02) Solaris 8 version of 111907-02. (from 111907-02) 4469908 (70451) vxprint outputs gives impression that volumes are not correctly created (71548) Add Autoraid suport to DDL (70451) VM 3.2beta: vxprint output of a stripe-pro vol erroneously lists plexes with no associated sub-disks (71548) Add Autoraid suport to DDL (72686) vxtask list shows wrong object names for Solaris 64 bit kernel. (73679) Hitachi 9200 command device not excluded during discovery 4505737 (79192) VxVm reading from STALE plexes / Possible Cause of Silent Data Corruption on VxVm mirrored volumes (79845) update modinfo and pstamp for VM 3.2t Patch 1 (79959) I18N checkin of help files, and adding disk.refresh.help to prototype file SOL. (80074) Final checkin of 3.2 localized man pages (80698) vxrelocd not sending e-mail in language of locale, only English. (80913) vxconfigd dmp_make_mpnode() can unncessarily creates /dev/vx/*dmp nodes (81083) FMR:panic from snapprint in 3.2 (81274) I18N: Missing exported variable in msg 1001 in disk.ckinit.sh (81526) Missing a page mapping, causes failed reads in > 2.4.7 kernels (81622) I18N: minor error in vxrelocd, where vxprint header output was not I18N'ized (81803) Create new vxdmp tunable "dmp_pathswitch_blocks_shift" to control amount of IOs into dmp path (from 111908-01) Solaris 7 version of 111907-01. (from 111909-01) Solaris 8 version of 111907-01. (from 111907-01) (35074) vxdg deport/destroy allows you to deport DG with BCV attachments (42013) EMC: New device types in SYMAPI should be handled properly in libarray (43079) EMC: vxdg doesn't apply EMC rules when dgid specified, instead of dg name (43263) General updates and corrections to VM man pages (54372) Sol: Core dump by vxconfigd when paths to all disks in dg are removed (56568) EMC: dgrules ignore no mem error condition. (58021) EMC: Incorrect use of vxsym_errno in vxvm (58257) vxio and dmp drivers must fail insane disks without retrying i/o to them (60036) Change vxdisk to implement disk array sepecific rules (61141) I18N: Need appropiate error handling when user input non-ascii characters 4414884 (62449) Free photon license is not enough for a failed drive in A5X00 (64309) malloc() has to be changed to xalloc() in disc_api.c (66317) CVM: vold hits assert if node aborts during master takeover (66733) FMR2: new objects need -e expresions in vxprint (67433) EMC: TCs in vxtf directory need to be changed after fix for 65056 (70126) after 2 node of a 8 node vcs cluster panic, none of the rest node pick up CVM master (70172) VVR primary node hung in a 3 primaries/1 secondary configuration (70228) VVR: Secondary (32 bit debug) panic while running scenario 7 test 3.13 (70413) add SIG licensing to VxVM (70569) It would be nice to remove ksh dependency from vxcppart.sh (71362) vxnotify does not send event notification at time dmp path os disconnected (71748) cfs glm hits assert vxg_api_unregister:3 (71754) vxconfigd hangs while waiting for a lock (72069) vxdarestore.tc Fails on 3.2(07_11) debug version leading rest of the TC's to abort 4466429 (72742) root disk cannot be mirrored with disk of same size (72828) rc.sysinit patch needs revisiting... (73159) vmconfig stress test tc's (73197) minor fixes for SIG licensing (73292) 8 node reltrain cluster has no master - vxconfigd cores with SIGSEGV (73448) FMR:Wrong arg used in volassist/snap.c error message (73679) Hitachi 9200 command device not excluded during discovery (73726) VM 3.2 - vxdisk scandisks does not bring up the new disk(s) in to the list (73740) VVR: vxrecover -np dumps core if rvg/rep is present in the dg. (73860) panic in vol_accum_stats() when running vvrtc's (74085) Add DDL support for Fujitsu arrays (74215) TC: init_stub.sh doesn't use TC_VXVM_STUB_DIR (74220) Cleanup the handling of return code for volcvm_establish() (74418) Need to use full path to mount command (74457) raw binding overflow upon volume creation is broken (74610) FMR:Data corruption with multiple plex attaches on NPFMR enabled volume. (74860) 3.2s breakup_dbg.tc scripts errors on sol26 (74926) cvm: vxconfigd assertion failure in dg.c:1408 on running ora_sm.tc#6 (75338) FMR2: sio queue corruption in dco error handling path (75560) RAID-5 Logging Problem (75606) vxconfigd terminated during its initialization if vxdctl enable issued. (75646) VVR: panic if all the logs for volume are disabled when dcm is active (75772) no DA record corresponding to RDAC devices (75953) CVM:vxdg upgrade command fail to upgrade DG version by default (76000) Add junk for vmdoc package (76180) RFE: Improve load balancing in DMP for path failure cases. (76213) CVM: kmsg has timing window in which sender misses notification (76390) race between dco log volume detach and plex detach (76466) VVR: vxrlink pause when SRL is around 99% full behaves incorrectly. (76477) VVR - stop rvg doesn't check for open volume (76498) USETYPE of var,usr,opt changed to gen in vxvm 3.1.1p2 after using vxinstall to encapsulate the boot disk (76522) VVR: Revamp flow control algo & implement missing packet resend 4468856 (76691) VM 3.2 controllers with greater than 8 LUNs not recognized (76719) inst.custom and inst.quick scripts needs minor verbage changes (76841) T3 Subpath displays are incorrect after failover (77017) vxdiskadm option 17 prevent multipathing with VID:PID option dump core (77164) Running 'vxdmpadm getctlrgrp' dumps core (77262) I18N: Checkin of localized online doc files (man pages, help, etc) for 3.2 (77266) Vold dumps core in handling of Transaction failure because of no accessible config copies (77306) I18N: Merging in 3.2 I18N shell-script fixes (77307) I18N: Merging in 3.2 I18N C source files changes (77540) Redundant 2.6 patch info needs to be removed (77987) No more lite license without a key (78016) Small change needed to support 2.4.7 kernel (78153) NEC diskarrays like iStorage 4000 are not recognized correctly in VM3.2 (78325) VVR: possible to have two attached rlinks on secondary (78384) vxconfigd uses /bin/rm in remove_dir() (78412) DMP: Provide dmp_getsubpaths API in libvxvmsc.so (78415) Disabling multipathing for a device may result in duplicate entries in vxdisk list output (78428) cvm dmp: volcvm_setiopath ioctl panics due to zero byte allocation 4490913 (78621) vxddladm accepts ncludearray as argument and does include the lib back (78679) dogi_darecs_on_device uses incorrect grep expression 4495696 (78746) Can not change drives selection during vxinstall as shown in the install menu (78831) Solaris vxvm-sysboot.sh needs to assure English locale for vxconfigd in Japan etc locales. (78879) CVM: volumes can be written even if dg is not write activated (79308) Check in missing help file disk.refresh.help (79311) vxsparecheck needs to send mail compatible with locales. (79585) Man page changes requested by Japanese l10n team. (79658) upgrade_starts fails with "test: argument expected" when upgrading from SUNWvxvm (79763) Changes requested by Japanese localisers to vxinfo man page (79845) update modinfo and pstamp for VM 3.2t Patch 1 (79909) EMC: support VxTF operations in vxtask (79959) I18N checkin of help files, and adding disk.refresh.help to prototype file SOL. 4510516 (80310) VxVM 3.2T/Monterey: "New Volume" GUI hangs/freezes during creating volume. (80487) arrays still connected after removing all the array library (80599) CVM:abortsio can hang for drl volumes (from 111901-03) (79959) I18N checkin of help files, and adding disk.refresh.help to prototype file SOL. (81622) I18N: minor error in vxrelocd, where vxprint header output was not I18N'ized (from 111901-02) (79959) I18N checkin of help files, and adding disk.refresh.help to prototype file SOL. (80074) Final checkin of 3.2 localized man pages (80698) vxrelocd not sending e-mail in language of locale, only English. (81274) I18N: Missing exported variable in msg 1001 in disk.ckinit.sh (from 111901-01) (61141) I18N: Need appropiate error handling when user input non-ascii characters (77262) I18N: Checkin of localized online doc files (man pages, help, etc) for 3.2 (77306) I18N: Merging in 3.2 I18N shell-script fixes (77307) I18N: Merging in 3.2 I18N C source files changes (77540) Redundant 2.6 patch info needs to be removed (78708) update modinfo and pstamp for I18N build a (78831) Solaris vxvm-sysboot.sh needs to assure English locale for vxconfigd in Japan etc locales. (79308) Check in missing help file disk.refresh.help (79311) vxsparecheck needs to send mail compatible with locales. (from 111163-01) (71748) cfs glm hits assert vxg_api_unregister:3 (71754) vxconfigd hangs while waiting for a lock (73292) 8 node reltrain cluster has no master - vxconfigd cores with SIGSEGV (74303) CVM 3.2r_spfs vxconfigd cores in krecover_dg_purge during recovery_C.tc (74610) FMR:Data corruption with multiple plex attaches on NPFMR enabled volume. (from 111898-01) 4491753 (75530) VxVM3,2r: T3 LUNs fails to be added to VxVM again after being deleted from disk 4491411 (76722) T3 reset causes VM to hang system ================================================================== Table of Contents ------------------------------------------------------------------ Section 1: Installing VxVM 3.2 Patch 5 1.1 Installing Required Sun Patches 1.2 Preparing to Install the Patch 1.3 Running patchadd 1.4 JBOD Array Considerations 1.5 Removing the VxVM 3.2 P5 Patch 1.6 Installing on a SunFire V880 system Section 2: New Upgrade_Start/Finish Script Section 3: DMP Tunable: dmp_failed_io_threshold consideration. IMPORTANT: Wrong dmp_failed_io_threshold setting can lead to data loss Section 4: New Support Information 3.1 DMP Support for VERITAS ServPoint SAN software 3.2 New Support for ATF Version 3.4.0.7 Section 5: Full Disk Mirorring and Replacement Considerations Section 6: Duplicate Disk ID's Section 7: vxddladm listsupport Considerations Section 8: vxassist relayout Considerations Section 9: Using vxunroot to unencapsulate root disk Section 10: Using devfs to replace a disk Section 11: Updated Manual Pages Section 12: Error Message when Booting off a Target Driver Section 13: Error Message when Starting VxVM in Boot Mode Section 14: Workarounds 14.1 VMSA CFS mount issue 14.2 Packaging installation hang issue 14.3 Plexes in SNAPDONE state not detached on write errors issue Section 15: Troubleshooting a Duplicate Device Entry in vxdisk list Section 16: Documentation Errata 16.1 Volume Manager 3.2 Installation Guide Changes 16.2 Volume Manager 3.2 Troubleshooting Guide Changes 16.3 Volume Manager 3.2 Hardware Notes Changes 16.4 Volume Manager 3.2 Administrator's Guide Changes Section 17: Disk Connectivity Policy 17.1 Global Disk Detach Policy 17.2 Local Disk Detach Policy Section 18: Backing up VxVM Configuration Data Section 19: Disk Encapsulation - Overlapping Partitions Section 20: Updating jbod.info file on a V880 internal disk enclosure configuration Section 21: Moving a disk device from one physical array slot to another ------------------------------------------------------------------ ================================ Section 1 Installing the VxVM 3.2 P5 Patch ================================ NOTE: Unlike the VxVM 3.1.1 patch, this same VxVM 3.2 P5 patch can be used on all VxVM 3.2 localized releases. For Solaris 2.6 release, refer to the Install.info file and/or the README within the patch for instructions on using the generic 'installpatch' and 'backoutpatch' scripts provided with each patch. Any other special or non-generic installation instructions should be described below as special instructions. For Solaris 7 and 8 releases, refer to the man pages for instructions on using 'patchadd' and 'patchrm' scripts provided with Solaris. Any other special or non-generic installation instructions should be described below as special instructions. The following example installs a patch to a standalone machine: example# patchadd /var/spool/patch/113201-05 The following example removes a patch from a standalone system: example# patchrm 113201-05 For additional examples please see the appropriate man pages. NOTE: Installation of VxVM 3.2 P5 involves stopping/starting vxconfigd multiple times. If VM is not configured prior to installation of VxVM 3.2 P5, you might see the follwing message: vxvm:vxconfigd: ERROR: enable failed: Volboot file not loaded transactions are disabled. 1.1 Installing Required Sun Patches Before installing the VxVM 3.2 p5 patch, your system must have the following Sun patches in order for VxVM to run properly: For Solaris 2.6: none For Solaris 7: 106541-22 (or greater), 107473-07 (or greater) For Solaris 8: 111413-06 (or greater), 108993-18 (or greater) NOTE: Patch 106541-22 requires 107544-03 (or greater) and 107834-03 (or greater) to be installed. Patch 111413-06 requires 109529-06 (or greater) to be installed. Patch 108993-18 requires 108528-13 (or greater), 108989-01 (or greater), 110386-01 (or greater) and 111023-02 (or greater) to be installed. You need to use the shutdown command to reboot the system after patch installation: shutdown -g0 -y -i6 1.2 Preparing to Install the Patch NOTE: If you have not yet installed Volume Manager 3.2, you need to follow the sequence of events: 1. Run pkgadd 3.2t 2. Run patchadd (see 1.3, below) 3. Run vxinstall Do NOT run vxinstall before running patchadd. Also, before running patchadd or patchrm, you need to: -shutdown any application that is accessing the volumes -unmount any mounted volumes. To do this, use the following commands: # umountall # vxdctl stop # vxiod -f set 0 1.3 Running patchadd To install the patch, you run the patchadd command: # patchadd NOTE: patchadd requires a patch name (). 1.4 JBOD Array Considerations If you have an array which was previously claimed as jbod, you may get the following warning message during reboot after the upgrade: NOTICE: vxvm:vxdmp: added disk array vxvm:vxconfigd: WARNING: File /etc/vx/array.info not in proper format. Regenerating file /etc/vx/array.info. All attributes will be set to default values. The system is coming up. Please wait. This message informs you that your array configuration has changed and that VxVM is recreating the file for you. 1.5 Removing the VxVM 3.2 P5 Patch On backing out the VxVM 3.2 P5 patch, you may experience one or both of the following: 1. You may get the following warning message when you reboot: vxvm:vxconfigd: WARNING: Incomplete serial no in file /etc/vx/array.info Attributes will be set to default values for these records. NOTE: The above warning message may be repeated many times. It can safely be ignored. 2. vxconfigd may core dump upon reboot after removing a patch using patchrm. (See TechNote ID: 242565 and Incident 84269) (The core dump can be removed. It has no effect on how VxVM runs on the system.) The core was caused by the old vxconfigd (pre-patch version). Since the core points to thread failure, it is likely to be a thread library issue. By doing a patchrm, the old libthread.so.1 is not removed, causing the problem. 1.6 Installing on a SunFire V880 system NOTE: Do not install VxVM 3.2 P5 patch if you only have a Photon license running on a SunFire V880 system. You must ensure that you have a properly installed full VxVM license before installing VxVM 3.2 P5 patch. Prior to VxVM 3.2 patch 03, a photon license will be improperly granted to and used by the V880 internal array. With the patch installed, a full VxVM license must be present for VxVM to function on the internal array. If the root disk is encapsulated, the system should still boot to allow installation of the license but no VxVM operations will be allowed on the internal array. If an external photon is attached, the photon license will still appear but it will not allow VxVM to function on the internal array. The license can be verified using the vxlicense command. PHOTON license: # vxlicense -p vrts:vxlicense: INFO: Feature name: PHOTON [98] vrts:vxlicense: INFO: Number of licenses: 99 vrts:vxlicense: INFO: Expiration date: No expiration date vrts:vxlicense: INFO: Release Level: 20 vrts:vxlicense: INFO: Machine Class: 200513877 For a full VxVM license, vxlicense -p will return the feature name "VxVM [95]". ------------------------------------------------------------------ ================================ Section 2 New upgrade_start/finish Scripts ================================ If you are going to upgrade Solaris, follow the instructions in the Installation Guide, but you will need to use the new upgrade_start and upgrade_finish scripts available from VERITAS customer support. The upgrade_start and upgrade_finish scripts for this release will help you to upgrade to version 3.2 of VxVM from a previous version of VxVM. NOTE: The scripts for this release (VxVM 3.2) will NOT help you to upgrade from VxVM 3.2 to a higher version of VxVM. If you need to upgrade from a lower version of VxVM to a higher version, then you always need to use the upgrade_start and upgrade_finish scripts for the higher version of VxVM, not the scripts for the lower version. If you plan to use the upgrade_start/upgrade_finish scripts to upgrade to VxVM 3.2 from a previous version of Volume Manager, be sure to use this new scripts available for this patch. Do NOT use the original upgrade_start and upgrade_finish scripts provided with the 3.2 VRTSvxvm package. ------------------------------------------------------------------ =================================================== Section 3 DMP Tunable: dmp_failed_io_threshold consideration. (Ref incident 136128) =================================================== SYMPTOM: Possible data loss after failure of a single path in a multipathed environment can occur due to interactions between an Application or File System and Volume Manager. This issue only applies to configurations where all the following apply: 1) Volume Manager version 3.2 P2 (or later) is installed. 2) Volume Manager Volumes are NOT mirrored. 3) There are multiple paths to the disk. 4) Some portion of the I/O path below DMP fails in such a way that the error is not returned to DMP before 10 minutes have elapsed. Examples of situations that have been seen to cause this include: Bad hardware (HBA, FCOT, GBIC, Switch Port, Array Controller), and HBA configured to retry endlessly. NOTE: It is the failure condition in 4) that triggers the problem. These failures are rare and are not seen during normal operation of a healthy SAN. BACKGROUND: With Volume Manager 3.2p2, a new tunable was introduced that allows DMP to explicitly mark a device as "insane" whenever a specific time period is reached. Normally, DMP would retry on all available DMP paths before it concludes that a disk is "insane." With this parameter, it can make this conclusion even before it had a chance to retry all paths. This tunable sets a threshold value of 600 seconds (10 minutes) for an I/O error to be returned from the device. If the I/O takes longer than 10 minutes to return with an error, then DMP assumes that the device is insane and passes the error to Volume Manager without retrying. This allows Volume Manager to use a mirror of the data to satisfy the request without further delay. NOTE: This is not a timeout. No DMP activity will occur after the 10 minutes passes. DMP only checks the elapsed time of the I/O after it is returned by the lower layer. If the elapsed time is greater than dmp_failed_io_threshold seconds (default 600) then the error will be returned to Volume Manager without retries. DMP will wait as long as it takes for the I/O to be returned. However, if the delay in returning the I/O is caused by something in the I/O path to the device rather than the device itself, DMP will incorrectly return the error to the Volume Manager layer rather than retrying the I/O on another path. If the Volume is not mirrored, then the error will be passed to the File System or Application layer. This can result in the File system marking inodes for deletion when they are still valid. If raw volumes are in use, then the application could believe that the data on disk is corrupted when it is not. If the Volume is mirrored, Volume Manager will satisfy the I/O from the other plex and detach the plex that failed, preventing the volume from becoming hung. SOLUTION: To prevent this possibility in situations where mirrored volumes are not used, the threshold should be tuned to a sufficiently high value so that it will not be reached (16 hours in this example). To change dmp_failed_io_threshold value, you need to add (or modify) the value in /kernel/drv/vxdmp.conf: dmp_failed_io_threshold=57600 Then reboot. In situations where mirrored volumes are in use and an application timeout is being hit when there is still a valid plex with the data, the dmp_failed_io_threshold can be tuned to a smaller value to allow the I/O to succeed on the mirror without triggering an application failure. ------------------------------------------------------------------ ======================= Section 4 New Support Information ======================= 4.1 DMP Support for VERITAS ServPoint SAN software The ServPoint SAN product can be connected to servers or platforms supported by VxVM 3.2 or higher, and it will appear to that server or platform as a standard supported disk array. 4.2 New Support for ATF Version 3.4.0.7 ATF version 3.4.0.7 is now supported. ------------------------------------------------------------------ ========================================================================= Section 5 Full Disk Mirroring and Replacement Encapsulated Root Disk Considerations ========================================================================= If you are mirroring or replacing an encapsulated root disk, then it is strongly recommended that you use vxdiskadm option #6 for mirroring and option #5 for replacing. However, if you choose to use vxassist to mirror your encapsulated root disk, or if you wish to manually replace the disk, then you will need to make sure that your target disk is setup correctly first. Due to larger private region size that was introduced in VxVM 3.2, manual instruction is needed to create a disk layout on the target disk first. Consider these two scenarios : 1. Mirroring a disk created using an earlier version of VxVM to a target disk which is exactly the same size as the source disk. ****A full disk means a disk that has no free cylinders. You only need to use this step if disk mirroring/replacement using vxdiskadm fails. For details, see vxdiskadm(1M). 2. Replacing a failed disk created using an earlier version of VxVM to a target disk which is exactly the same size as the source disk. NOTE: In the following examples, the traditional c#t#d# naming scheme is used. If you are using enclosure-based naming scheme, use the enclosure name instead. 1. Determine the size of the source disk's private region, using either of the following methods: a. Get the private region length of the source disk using: #vxdisk list diskname where diskname is the disk media name of the source/failed disk. In the displayed output, note the len(length) value for the private field. In this example, the value of this field is 3071: private: slice=4 offset=1 len=3071 b. For failed disk, if this information is not be available, you must decide what the private region is. (One option is to use the same private region size of another identical disk in the disk group.) 2. Use the vxdisksetup program to initialize the target disk: # /usr/lib/vxvm/bin/vxdisksetup -i c#t#d# privlen=XXXX old_layout where XXXX is the size of the source disk's private region. 3. Add the newly initialized target disk to the source disk group: # vxdg -k -g diskgroup adddisk medianame=c#t#d# ------------------------------------------------------------------ =================== Section 6 Duplicate Disk Id's =================== When VxVM detects disks with duplicate disk IDs, VxVM attempts to select the appropriate disk (using array vendor-specific logic). If a disk cannot be selected, VxVM does not import any of the duplicated disks into a disk group. In the rare case when VxVM cannot make the selection, you must choose which duplicate disk to use. (An array with hardware mirroring capability is particularly susceptible to data corruption, if the wrong disk were to be selected.) The following examples describe situations where user intervention is needed. Example 1: When DMP is disabled to an array that has multiple paths, then each path to the array is claimed as a unique disk. VxVM detects duplicate disks whenever an array is configured as a unique disk for each accessible path and gives the following message: vxvm:vxconfigd: NOTICE: Unable to resolve duplicate diskid. When DMP is suppressed, VxVM can not know which path to select as the true path. You must decide which path to use. Decide which path to exclude and then either edit the file /etc/vx/vxvm.exclude or, if vxconfigd is running, use the vxdiskadm option 17 selection 1 (suppress all paths through a controller from VxVM?s view) or selection 2 (suppress a path from VxVM?s view). The following example shows a vxvm.exclude file with paths c6t0d0s2, c6t0d1s2, and c6t0d2s2 excluded from VxVM: exclude_all 0 paths c6t0d0s2 /pci@1f,4000/SUNW,ifp@2/ssd@w50060e8003275705,0 c6t0d1s2 /pci@1f,4000/SUNW,ifp@2/ssd@w50060e8003275705,1 c6t0d2s2 /pci@1f,4000/SUNW,ifp@2/ssd@w50060e8003275705,2 # controllers # product # pathgroups Example 2: Some arrays such as EMC, HDS, and so on provide hardware mirroring. When a lun pair is split, depending on how the process is performed, you may get two disks with the same diskid. With duplicate disk IDs, VxVM gives the following message: vxvm:vxconfigd: NOTICE: Unable to resolve duplicate diskid. Check with your array vendor to make sure that your site uses the proper split procedure. If you know which luns to use, decide which path to exclude and then either edit the file /etc/vx/vxvm.exclude or, if vxconfigd is running, use the vxdiskadm option 17 selection 1 (suppress all paths through a controller from VxVM?s view) or selection 2 (suppress a path from VxVM?s view). Example 3: When you have disks duplicated using dd or any other disk copying utility, VxVM gives the following message: vxvm:vxconfigd: NOTICE: Unable to resolve duplicate diskid. Choose which set of duplicated disks that you want to exclude, and either edit the file /etc/vx/vxvm.exclude or, if vxconfigd is running, use the vxdiskadm option 17 selection 1 (suppress all paths through a controller from VxVM?s view) or selection 2 (suppress a path from VxVM?s view). ------------------------------------------------------------------ =================================== Section 7 vxddladm listsupport Considerations =================================== After installing your patch, you may not see all the supported arrays when using the vxddladm listsupport command. If you do not see the correct information, enter: # vxddladm addsupport all # vxddladm listsupport to see the updated results. ------------------------------------------------------------------ =================================== Section 8 vxassist relayout Considerations =================================== The vxassist relayout operation requires all mirrors in the volume to have the same layout. If the volume is contains mirrors with different layouts, then you need to relayout the mirror plexes to the same layout before performing the volume relayout operation. ------------------------------------------------------------------ ============================================ Section 9 Using vxunroot to unencapsulate the root disk ============================================= Only those encapsulated volumes that were derived from the pre-encapsulated root disk partitions can be unrooted. All other volumes created on the root disk after encapsulation must be either removed or moved to another disk before using vxunroot. -------------------------------------------------------------------------- ======================================== Section 10 Using devfs to replace a disk ======================================== Before using devfs to replace a disk, you should ensure that the dev_t entry for the old disk is removed from the OS device tree. Use the following command to remove the dev_t entry: luxadm -e offline ==================== Section 11 Updated Manual Pages ==================== You should replace the manual pages issued with the previous VxVM 3.2 release with new manual pages. Please refer to TechFile ID 251542 (at http://support.veritas.com/docs/251542) for instructions on how to obtain the latest manual pages package, VRTSvmman. ------------------------------------------------------------------ ============================================== Section 12 Error Message when Booting off a Target Driver ============================================== An updated When any target driver, such as an ATF, coexists with VxVM, and if the target driver happens to claim the boot disk, then the following message may be displayed at the console: WARNING: vxvm:vxdmp: Cannot find device number for where the path corresponds to the bootdisk, obtained from EEPROM. This message can safely be ignored. (Ref. incident 109019.) ------------------------------------------------------------------------------------------ ============================================= Section 13 Error Message when Starting VxVM in Boot Mode (Ref. incident 102494) ============================================= In some situations, a licensing check may display the following error message when starting VxVM in boot mode: /usr/sbin/prtconf: getexecname() failed This message can be safely ignored. (Refer also to Sun Bug# 4122428 and 4209527.) Workaround: # # Find the real hardware architecture: # prtconf | head -5 | tail -1 cd /platform ln -s sun4u SUNW,Ultra-250 cd /usr/platform ln -s sun4u SUNW,Ultra-250 sync reboot ------------------------------------------------------------------------------------- ========================== Section 14: Workarounds ========================== 14.1 VMSA CFS mount issue: Workaround Problem: VMSA fails to list/recognize valid cluster nodes for a CFS mount operation, when the CFS is not mounted on at least one cluster nodes. Symptom: When attempting a cluster-mount operation on an unmounted CFS: VMSA rejects valid cluster node names in mount dialogs. VMSA fails to list cluster nodes in dialogs that provide a list of valid nodes for mounting a CFS. Workaround: Execute the following cluster-mount command on the cluster's primary node: /opt/VRTSvxfs/lib/vcs/mount_cfs where is the block-device name for the CFS. And is the name of any node in the cluster. After mounting the CFS on one cluster node, VMSA will function normally. ------------------------------------------------- 14.2 Packaging installation hang issue: Workaround Problem: On certain Solaris 2.6 configuration, installation of this patch may be hung in drvconfig state, because the system has exhausted its kobj_map. This problem has been fixed in Solaris 7 and up. Symptom: When attempting to install patch 111907-05 on a Solaris 2.6 system, installation of patch hang on: "Adding vxio driver for SunOS version 5.6..." A ps reveals the following processes which appear to be hung: # ps -eaf | grep vxio root 2023 1963 0 10:14:06 pts/0 0:01 add_drv -m * 0640 root sys /kernel/ drv//vxio root 2025 2023 0 10:14:06 pts/0 0:00 drvconfig -i vxio -r /devices Workaround: Add the following line to /etc/system, reboot the machine before installing this patch: set kobj_map_space_len=0x200000 ------------------------------------------------------------------ ======================================================= Section 15 Troubleshooting a Duplicate Device Entry in vxdisk list (Ref. incidents 114479 and 101371) ======================================================= Please follow this procedure if you encounter duplicate entry in "vxdisk list" or vxdisksetup gives "Duplicate DA" error as specified in Incident:101371 SunBug:4630477 and Incident:114479 SunBug:4769704. # vxdisksetup -i c1t5d0 vxdisksetup: c1t5d0: Duplicate DA records encountered for this device. Refer to the troubleshooting guide to clear them # vxdisk list c0t8d0s2 sliced - - online c1t2d0s2 sliced c1t2d0s2 rootdg online c1t3d0s2 sliced c1t3d0s2 ttdg online c1t5d0s2 sliced c1t5d0s2 - error c1t5d0s2 sliced c1t5d0s2 - online/error <<<-- any state is ok. 1. Remove c1t5d0s2 entries from vxvm control. Do "vxdisk rm " for all the duplicate entries [since you don't know which one is the valid one, so do it for all ...there can be more than 2 duplicate entries also ...] vxdisk rm c1t5d0s2 vxdisk rm c1t5d0s2 <-- do it again to remove all the entries. 2. Remove the disk c1t5d0s2 using luxadm ( solaris command ). Get A5K Array name and Slot number of the disk using luxadm #luxadm disp /dev/rdsk/c1t5d0s2 Remove device c1t5d0s2 using "luxadm remove_device" command. [luxadm remove_device enclr,slot-number] #luxadm remove_device SAHYADRI,f5 Pull the disk out as per luxadm instructions. 3. Run command "devfsadm -C" 4. Run command "vxdctl enable" [Till this point, we have removed the dev_t corresponding to the physical disk. Now we will remove all the stale dev_t's] Please loop ac per below instructions. LOOP : [you will see one entry less, since we can have more than 2 duplicate entries] #vxdisk list c0t8d0s2 sliced - - online c1t2d0s2 sliced c1t2d0s2 rootdg online c1t3d0s2 sliced c1t3d0s2 ttdg online c1t5d0s2 sliced c1t5d0s2 - error 5. Again remove *ALL* duplicate c1t5d0s2 entries from vxvm control. vxdisk rm c1t5d0s2 6. Run command "luxadm -e offline " on *ALL THE PATHS* to the disk [this removes the stale dev_t] Our test machine is having 2 paths to the disk through controllers c1 and c2 #luxadm -e offline /dev/dsk/c1t5d0s2 #luxadm -e offline /dev/dsk/c2t5d0s2 7. Run command "devfsadm -C" 8. Run command "vxdctl enable" goto LOOP: [Continue this process until there are no more entries in vxdisk list of corresponding disk c1t5d0s2 ] Result: # vxdisk list c0t8d0s2 sliced - - online c1t2d0s2 sliced c1t2d0s2 rootdg online c1t3d0s2 sliced c1t3d0s2 ttdg online Now both OS device tree and VxVM are in a clean state corresponding to disk c1t5d0s2. Please follow the procedure to replace the failed disk or removed disk as described in the Volume Manager Administration Guide (replace a new disk in place of device c1t5d0s2). ================================== Section 16: Documentation Errata for VxVM 3.2 ================================== Please note the following changes to the documentation for VxVM 3.2 for Solaris. ------------------------------------------------- 16.1 VERITAS Volume Manager Installation Guide ------------------------------------------------- [1] On page 9, reads: The boot disk is a special case. If no other space is available, VxVM attempts to allocate space usually reserved for swap by shrinking the swap partition (which must be slice 1). This process is known as swap relocation and, if necessary, happens automatically during root disk encapsulation. [Should be] The boot disk is a special case. If no other space is available, VxVM attempts to allocate space usually reserved for swap by shrinking the swap partition. This process is known as swap relocation and, if necessary, happens automatically during root disk encapsulation. ** Notice the phrase "(which must be slice 1)" is removed [2] On page 53, Step 2 reads: Determine if the root disk is encapsulated by running the following command: # df -k If the output from this command includes a pathname that contains vx and rootvol as in /dev/vx/dsk/rootvol, then the rootdisk is encapsulated and you must upgrade both VxVM and Solaris. See "Upgrading VxVM on an Encapsulated Root Disk on page 56." [Should be] If the output from this command includes a pathname that contains vx and rootvol as in /dev/vx/dsk/rootvol, then the rootdisk is encapsulated. See "Upgrading VxVM on an Encapsulated Root Disk on page 56." ------------------------------------------------- 16.2 VERITAS Volume Manager Troubleshooting Guide ------------------------------------------------- [1] On page 33 rm -r /etc/vx/reconfig.d/state.d/install-db [should be] rm -r /etc/vx/reconfig.d/state.d/install-db [2] On page 47 or invoke vxconfigd as shown here: [should be] or invoke vxconfigd under C locale as shown here: [3] On page 48 specify the option -x syslog to vxconfigd: [should be] specify the option -x syslog to vxconfigd under C locale: ------------------------------------------------- 16.3 VERITAS Volume Manager Hardware Notes ------------------------------------------------- [1] On page 5 path c1t0d0s2 is represented by the DMP metanode c1t0d0s2 which is represented by device nodes in the /dev/vx/dmp and /dev/vx/rdmp directories. [should be] path c1t0d0s2 is represented by the DMP metanode c2t0d0s2 which is represented by device nodes in the /dev/vx/dmp and /dev/vx/rdmp directories. [2] On page 5 This example output shows that the path c2t0d0s2 is owned by the DMP device c2t0d0s2 which has two paths to it. [should be] This example output shows that the physical path c1t0d0s2 is owned by the DMP device c2t0d0s2 which has two paths to it. [3] On pages 16 and 17 In the "DMP and JBOD Disk Array Support," section, on pages 16-17, the instructions for adding JBOD disk arrays to the JBOD category of DMP by editing vxdmp.conf are no longer supported, and should be ignored. You must use the vxddladm addjbod command to add disks to the JBOD category. Please refer to the vxddladm(1M) man page for details. [4] On page 23 #vxdmpadm getsubpaths ctlr=/c1 [should be] #vxdmpadm getsubpaths ctlr=c1 [5] On page 23 NAME STATE TYPE DMPNODENAME DA-TYPE DA-SNO [should be] NAME STATE TYPE DMPNODENAME ENCLR-TYPE ENCLR-NAME [6] On page 29 /dev/RAID_module01/0s[0-7] and /dev/RAID_module01/0s[0-7] [should be] /dev/RAID_module01/0s[0-7] and /dev/rRAID_module01/0s[0-7] [7] on page 34 Replace the complete section under "Sun StorEdge T3 Support in A Multi-host Environment" [should be] In multi-host configurations, the Sun StorEdge T3 must be configured to the MPxIO mode (explicit failover or nonauto_trespass). In this mode, the Sun StorEdge Traffic Manager Software (STMS) driver on the host handles multipathing. VERITAS Volume Manager (VxVM) will not see multiple paths to any device on the array. You need to upgrade the Sun StorEdge T3 firmware to 1.17B. The patch for this upgrade is 109115-09. The /kernel/drv/scsi_vhci.conf file must have the MPxIO mode enabled (mpxio-disable="no"). Use the command "sys mp_support mpxio" on the Sun StorEdge T3 array to enable the MPxIO mode. NOTE: All hosts in the clustered environment must use the MPxIO mode. ------------------------------------------------- 16.4 VERITAS Volume Manager Administrator's Guide ------------------------------------------------- [1] On page 46 "The original volume must not be in use during a snapback operation in which it is resynchronized from a snapshot." [should be] The original volume must not be in use during a snapback operation that uses the option -o resyncfromreplica to resynchronize the volume from the snapshot. [2] On page 110 ENCLR_NAME ENCLR_TYPE ENCLR_SNO MODE STATUS ================================================================== enc0 T300 60020f20000001a90000 PRIVATE CONNECTED [should be] ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS ======================================================= enc0 T300 60020f20000001a90000 CONNECTED [3] On page 111 ENCLR_NAME ENCLR_TYPE ENCLR_SNO MODE STATUS ================================================================= others0 OTHER OTHER_DISKS PRIVATE CONNECTED seagate0 SEAGATE SEAGATE_DISKS PRIVATE CONNECTED enc0 T300 60020f20000001a90000 PRIVATE CONNECTED [should be] ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS ========================================================= others0 OTHER OTHER_DISKS CONNECTED seagate0 SEAGATE SEAGATE_DISKS CONNECTED enc0 T300 60020f20000001a90000 CONNECTED [4] On page 111 ENCLR_NAME ENCLR_TYPE ENCLR_SNO MODE STATUS ================================================================= others0 OTHER OTHER_DISKS PRIVATE CONNECTED seagate0 SEAGATE SEAGATE_DISKS PRIVATE CONNECTED GRP_1 T300 60020f20000001a90000 PRIVATE CONNECTED [should be] ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS ======================================================= others0 OTHER OTHER_DISKS CONNECTED seagate0 SEAGATE SEAGATE_DISKS CONNECTED GRP_1 T300 60020f20000001a90000 CONNECTED [5] On page 155 # vxmake -hfsgen vol home plex=home-1,home-2 [should be] # vxmake -U fsgen vol home plex=home-1,home-2 [6]on page 220 or specify the start keyword to vxrelayout, as shown here: # vxrelayout -o bg start vol04 [should be] For relayout operations that have not been stopped using the vxtask pause command (for example, the vxtask abort command was used to stop the task, the transformation process died, or there was an I/O failure), resume the relayout by specifying the start keyword to vxrelayout, as shown here: # vxrelayout -o bg start vol04 NOTE. If you use the vxrelayout start command to restart a relayout that you previously suspended using the vxtask pause command, a new untagged task is created to complete the operation. You cannot then use the original task tag to control the relayout. [7] On page 272 9. On the OHP host where the backup is to be performed, use the following command to import the snapshot volumes fs disk group: # vxdg import snapvoldg [should be] 9. On the OHP host where the backup is to be performed, use the following command to import the snapshot volumes fs disk group: # vxdg import snapvoldg The snapshot volume is initially disabled following the split. Use either of the following commands on the OHP host to restart the snapshot volume: # vxrecover -g snapvoldg -m snapvol # vxvol startall [8] On page 275 10. On the OHP host where the replica database is to be set up, use the following command to import the snapshot volumes fs disk group: # vxdg import snapvoldg [should be] 10. On the OHP host where the replica database is to be set up, use the following command to import the snapshot volumes fs disk group: # vxdg import snapvoldg The snapshot volume is initially disabled following the split. Use either of the following commands on the OHP host to restart the snapshot volume: # vxrecover -g volumedg -m snapvol # vxvol startall [9] On page 291 Replace the complete section under "voldrl_max_drtregs." [should be] voldrl_max_drtregs This tunable specifies the maximum number of dirty regions that can exist on the system at any time. This is a global value applied to the entire system, regardless of how many active volumes the system has. The default value for this tunable is 2048. The tunable voldrl_max_drtregs can be used to regulate the worse-case recovery time for the system following a failure. A larger value may result in improved system performance at the expense of recovery time. =========================== Section 17: Disk Connectivity Policy (Ref incident 118065) =========================== This section provides information relating to BugID 4817095. With VERITAS Volume Manager (VxVM), it is possible to create a shared disk group on the master node of a cluster. This provides all nodes in the cluster with concurrent read and write access to the volumes within the shared disk group. Only the master node can create a shared disk group. This has the following advantages and implications: * All the nodes in the cluster see exactly the same configuration. * Only the master node can change the configuration. * Any changes on the master node are coordinated and propagated to the other (slave) nodes in the cluster. * Any failures requiring a configuration change must be sent to the master so that they can be correctly resolved. * As the master node resolves any failure, all the slave nodes are correctly updated; ensuring that all nodes have the same view of the configuration. The practical implication of this approach is that any IO failure on any node results in the configuration of all nodes being changed. However, in some cases, it is not desirable to have all nodes reacting in this way to an IO failure (this is known as the global disk detach policy). To address these cases, an alternative way of responding to IO failures was added for shared disk groups. Starting with VxVM 3.2 the local disk detach policy (more formally known as the connectivity policy) became available for disk groups version 70 and above. NOTE: When the master causes an IO failure on a disk, the disk is marked as failed and removed from the disk group. This is the same for both local detach policy and global detach policy. On all the nodes, the volumes on that disk will be unable to perform IO to an underlying physical device. When a slave causes an IO failure the disk is not removed from the disk group. 17.1 Global Disk Detach Policy The global disk detach policy is the traditional and default policy for all nodes on the configuration. In this case, if there is an IO failure on one node, the master node performs the normal IO recovery work to repair the failure, and the plex is detached cluster wide. All nodes in the cluster continue to perform IO functions. NOTE: The global detach policy must be used with Active/Passive arrays, This ensures that all nodes correctly coordinate use of the active path. 17.2 Local Disk Detach Policy The local disk detach policy was first designed for failover applications in large clusters. If an application is affected by IO failures, the cluster framework is then able to move the application to a node that still had access to the volume. The local disk detach policy is used particularly with mirrored volumes. (For Unmirrored (or hardware mirrored) volumes there is no difference between the local and global detach policies.) In the case of local disk detach policy, if there is a write failure on a node, the master node performs the normal IO recovery work to repair the failure; but in addition, all the nodes are contacted to see if the disk is still acceptable. If the failure is not seen by all nodes, the local detach policy stops IO only from the node that had the failure. NOTE: For private disk groups, the local disk detach policy does not change the behavior of the disk group. ================================== Section 18 Backing up VxVM Configuration Data ================================== A new feature, the vxconfigbackupd daemon, is now available for backing up VxVM configuration data. vxconfigbackupd monitors changes to disk group configuration in VxVM. Whenever a configuration change occurs, the daemon backs up the changed disk group configuration to a file using the vxmake description format. The vxconfigbackupd daemon is started from the /etc/rc2.d/S95vxvm-recover startup script. Changes that you make in this script for the invocation of vxconfigbackupd do not take effect until VxVM is next started from the script. Error and warning messages for the daemon are written with a timestamp to the console device. The daemon exits on receiving a TERM signal. By default, configuration backup files are stored in the /etc/vx/dgcfg directory in compressed form (using gzip or compress), and are maintained in a cyclical manner. An alternate configuration backup directory can be specified using the -d option. The files are stored uncompressed if the compression utilities are not available on the system. The gzip utility is preferred over compress when both utilities are available. The configuration copy files are named dgname.N, where N is a number ranging from 1 for the most recent copy to 5 for the oldest copy. The number of copies that are maintained can be changed by using the -n option. When a disk group is deported or destroyed, the default behavior is to move the configuration files for the disk group from the backup directory to the deport subdirectory. If the -R option is specified, the configuration files are deleted instead of moved. By default, the daemon logs the configurations of all disk groups that are currently imported on the system. If a list of one or more disk group names is specified as an argument, this restricts the daemon to logging the configurations of only these disk groups. Please refer to the configbackupd(1M) manual page for further information. =========================================== Section 19 Disk Encapsulation - Overlapping Partitions (Ref incident 114288) =========================================== This section provides additional information in relation to BugID 4711196. When Solaris disks are encapsulated, provision is made for overlapping partitions - allowing the public region to overlap the private region. This is action is necessary because Solaris partitions must be cylinder aligned and offsets must protect the VTOC. ======================================================================= Section 20 Updating jbod.info file on a V880 internal disk enclosure configuration (Ref incident 133579, Sun BugID 4900508 ) ======================================================================= There is a new procedure for supporting multipathed JBOD (Just a Bunch of Disks) drives with VERITAS Volume Manager (VxVM) 3.2 and later. This new procedure is needed for multipathed internal disk drives on Enterprise 3x00 and Sun Fire V880 systems. Customers with internal drives with VxVM 3.2 cannot enable Dynamic Multipathing (DMP) support without this procedure, which will lead to serviceability issues. This procedure only affects multipathed disk drives that are not supported under VERITAS Device Discovery Libraries (DDL) in VxVM 3.2. The following is an example of failing configuration: VERITAS Volume Manager (VxVM) . VERITAS Volume Manager 3.2 and later Sun Workstation/Server with internal multipathed disks, example: . Sun Enterprise Server 3x00 . Sun Fire V880 Sun StorEdge Arrays are supported with VxVM 3.2 DDL and do not need this procedure for DMP to work. Specifically, Photon (A5x00), Purple I/II (T3/T3+/T3B), and Sonoma (A3500) are supported with storage specific DDL and are not affected. The following example shows a configuration which will experience this problem. If a multipathed disk is connected to two different HBAs such as c0 and c1, 'vxdisk' will list it as two separate disks: # vxdisk list -------------------------------------------------- | DEVICE | TYPE | DISK | GROUP | STATUS | |===========+=========+=========+=========+========| | c0t0d0s2 | sliced | disk0 | rootdg | online | | c1t0d0s2 | sliced | disk1 | rootdg | online | -------------------------------------------------- Here two disks showed up instead of one. Any internal JBOD disk that has multiple paths to it is subject to this problem. Another example occurs when the vxdmpadm command shows a multipathed disk having only one path to it. # vxdmpadm getdmpnode nodename=c0t0d0s2 ----------------------------------------------------------------------- | NAME | STATE | ENCLR-TYPE | PATHS | ENBL | DSBL | ENCLR-NAME | |==========+==========+=============+========+======+======+============| | c0t0d0s2 | ENABLED | OTHER_DISKS | 1 | 1 | 0 | OTHER_DISKS| | c0t1d0s2 | ENABLED | OTHER_DISKS | 1 | 1 | 0 | OTHER_DISKS| ----------------------------------------------------------------------- This is a change of behavior starting in VxVM 3.2 compared to earlier releases. VxVM 3.2 moved to a new device discovery library (DDL) architecture in which specific device support (Hitachi, Photon, T3, Sonoma) is moved from kernel driver to user libraries (under /etc/vx/lib/discovery.d). The benefit is that new device support and bug fixes can now be done with minimal disruption to the system. The solution to this problem for VxVM 3.2 and later is to specify JBOD support with the 'vxddladm' command. This command needs to be executed once and the information is persistent across reboots. Preferably, the command should be run *before* running 'vxinstall' for the first time. Details for this procedure can be found in the VxVM 3.2 Administrator's Guide, and are repeated below. CORRECTIVE ACTION: The following recommendation is provided as a guideline for authorized Enterprise Services Field Representatives who may encounter the above problem. This procedure can also be used to support Vicom Storage Virtualization Engine. It is also used in the StorEdge 6xx0 solution. New service procedure and documentation change are required to address this VxVM multipathing issue. VERITAS has documented the 'vxddladm' JBOD support in the VxVM 3.2 Administrator's Guide, page 59, under the section: Administering Disks --> Discovering and Configuring Newly Added Disk Devices ----> Administering the Device Discovery Layer ------> Adding Support for Disks in the JBOD Category Note that "vxdmp.conf" is not the right fix for this case as "vxddladm" will eventually take over the functionality. For completeness, please adhere to the following procedure: 1. Find Disk Vendor ID Execute the following command to correctly identify the vendor ID of the internal disk: (must run as root) /etc/vx/diag.d/vxdmpinq For example: # /etc/vx/diag.d/vxdmpinq /dev/rdsk/c0t1d0s2 Vendor id (VID) : SEAGATE Product id (PID) : ST318404LSUN18G Revision : 8507 Serial Number : 0025T0LA3H In the example above, the vendor id is "SEAGATE". 2. Add VERITAS Device Discovery Layer support for JBOD. (must run as root) # /usr/sbin/vxddladm addjbod vid=SEAGATE pid=ST31840LSUN18G # vxdctl enable NOTE: If the device is FUJITSU, you must include the length. For example, # /usr/sbin/vxddladm addjbod vid=FUJITSU pid=MAG3091LSUN9.0G length=10 Use vxddladm command to verify the JBOD disk is now supported: # /usr/sbin/vxddladm listjbod -------------------------------------------------------------------- | VID | PID | Opcode | Page Code | Page Offset | SNO length | |=========+==========+========+===========+=============+============| | SEAGATE | ALL PIDs | 18 | -1 | 36 | 12 | -------------------------------------------------------------------- 3. Reboot the system 4. Verify devices are now multipathed. # /usr/sbin/vxdmpadm listenclosure all --------------------------------------------------------- | ENCLR_NAME | ENCLR_TYPE | ENCLR_SNO | STATUS | |===============+==============+==============+===========| | OTHER_DISKS | OTHER_DISKS | OTHER_DISKS | CONNECTED | | Disk | Disk | DISKS | CONNECTED | --------------------------------------------------------- 5. Verify disk and DMP paths are recognized. # /usr/sbin/vxdisk list Devices under Disk_0 are multipathed disks. ------------------------------------------------ | DEVICE | TYPE | DISK | GROUP | STATUS | |=========+==========+==========+=======+========| | Disk_0 | sliced | disk01 | rootdg | online | ------------------------------------------------ # /usr/sbin/vxdmpadm getdmpnode enclosure=Disk ------------------------------------------------------------------ | NAME | STATE | ENCLR-TYPE | PATHS | ENBL | DSBL | ENCLR-NAME | |========+=========+============+=======+======+======+============| | Disk_0 | ENABLED | Disk | 2 | 2 | 0 | Disk | ------------------------------------------------------------------ ---------------------------------------------------------------------------- ======================================================================= Section 21 Moving a disk device from one physical array slot to another (Ref incident 137607) ======================================================================= PROBLEM: If a disk device is moved (or swapped) from one physical array slot to another, then it is possible for two different devices to be incorrectly merged into a single DMP node - ultimately leading to possible data corruption. Note: This situation can occur even after the disks have been re-discovered (for example, by means of the devfsadm -C command) and re-scanned (for example, by using the vxdctl enable command). For example; suppose the disk at slot 2 is powered off. The host will not then see any device in slot 2. Then: # vxdisk list DEVICE TYPE DISK GROUP STATUS c1t1d0s2 sliced - - error c1t1d0s4 simple c1t1d0s4 rootdg online c3t1d0s2 sliced - - online c3t3d0s2 sliced - - online c3t4d0s2 sliced - - online c3t5d0s2 sliced - - online c3t6d0s2 sliced - - online Note that c3t2d0 is missing. Also notice that DMP device c3t5d0 has only one entry. Then: # vxdmpadm getsubpaths dmpnodename=c3t5d0s2 NAME STATE PATH-TYPE CTLR-NAME ENCLR-TYPE ENCLR-NAME ==================================================================== c3t5d0s2 ENABLED - c3 Disk Disk Suppose, now: disk c3t5d0 at slot 5 is powered off and removed from slot 5 disk c3t2d0 at slot 2 is removed from slot 2 The two disks are swapped (so that the disk that was in slot 5 is now in slot 2, and the disk that was in slot 2 is now in slot 5 Both disks are powered on. If rediscover and rescan are now performed, in an attempt to get DMP and the OS see the new disk arrangement, it is possible that DMP node c3t5d0s2 has become "confused," and has incorrectly multi-path'ed BOTH the old device (c3t2d0s2) as well as the new device (c3t5d0s2) as the same device. Since these two disks are physically different, and should never be multi-path'ed into the same DMP node, data corruption will occur if I/O goes through this DMP path. # devfsadm -C # vxdctl enable # vxdisk list DEVICE TYPE DISK GROUP STATUS c1t1d0s2 sliced - - error c1t1d0s4 simple c1t1d0s4 rootdg online c3t1d0s2 sliced - - online c3t3d0s2 sliced - - online c3t4d0s2 sliced - - online c3t5d0s2 sliced - - onlin c3t6d0s2 sliced - - online # vxdmpadm getsubpaths dmpnodename=c3t5d0s2 NAME STATE PATH-TYPE CTLR-NAME ENCLR-TYPE ENCLR-NAME ==================================================================== c3t5d0s2 ENABLED - c3 Disk Disk c3t2d0s2 ENABLED - c3 Disk Disk # dd if=/dev/zero of=/dev/vx/rdmp/c3t5d0s4 bs=128k count=1000 1000+0 records in 1000+0 records out # iostat device bps sps msps .... c3t5d0 4076 15.9 1.0 .... c3t2d0 4076 15.9 1.0 Notice that I/O is going through both devices, which is incorrect, and will lead to unexpected data corruption. WORK AROUND: Just before changing (swapping) the disk slots, the multipathing should be disabled. That is, the library definition and/or the jbod definitions should be removed. The disks will then be added as single-pathed disks, and existing multi-pathing will be lost as a result of dmpnodes being split. Multipathing can be later re-enabled, and vxdctl enable will merge the correct dmpnodes. The steps are: (a) Exclude the library or remove the JBOD definition: # vxddladm excludearray libname=<> or # vxddladm rmjbod vid=<> (b) Scan the disks for vxvm: # vxdisk scandisks or vxdctl enable (The main purpose of steps (a) & (b) is to force all the dmpnodes from the array to be single-path'ed.) (c) Include the library or JBOD definition. # vxddladm includearray libname=<> or # vxddladm addjbod vid=<> (d) Scan the disks for vxvm: #vxdisk scandisks or vxdctl enable. (The main purpose of steps (c) & (d) is to re-group the paths from scratch to again form multi-path'ed dmpnodes for the luns.) Note: The above steps will also fix the problem, if it has already occurred. For example: If you have physically moved a particular XP1024 disk (corresponding DDL library libvxxp256.so) to a different array slot, then you need to carry out the following steps: # vxddladm excludearray libname=libvxxp256.so # vxdctl enable (or vxdisk scandisks) # vxddladm includearray libname=libvxxp256.so # vxdctl enable (or vxdisk scandisks) CAUTION: Once multi-pathing is disabled, the same disk is exposed as two different disks with the potential of the disk being initialized through the other path. Therefore, this state should not be continued for longer than necessary. Also, the system must not be rebooted - the DG import would then fail due to duplicate disk ids. Patch Installation Instructions: -------------------------------- Please refer to Section 1 above. Special Install Instructions: ----------------------------- Please refer to Section 1 above. README -- Last modified date: Wednesday, March 3, 2004