Patch Name: PHCO_11288 Patch Description: s700_800 10.01 LVM commands cumulative patch Creation Date: 97/06/05 Post Date: 97/07/02 Hardware Platforms - OS Releases: s700: 10.01 s800: 10.01 Products: N/A Filesets: LVM.LVM-RUN LVM.LVM-ENG-A-MAN Automatic Reboot?: No Status: General Release Critical: No Path Name: /hp-ux_patches/s700_800/10.X/PHCO_11288 Symptoms: PHCO_11288: The LVM relocation policy has two settings; "y", mark a bad block in the bad block directory and relocate the block to an alternate location, and "n", mark a bad block in the bad block directory but do not relocate the block to a new location. This causes problems for intelligent disks like EMC Symmetrix disks which can "repair" themselves. The bad block directory entry prevents access to the good, repaired data on disk. PHCO_10060: A non-root process can gain access to a root shell. PHCO_8624: Modify LVM library routine to fix the following problem: The tm_year field of the tm structure returned by the localtime() library call was assumed to contain the last 2 digits of the year. But it really contains the number of years from 1900. This was corrected by replacing "tm_year" by "tm_year%100". PHCO_8458: Several customers using LVM have expressed the desire to have LVM return application I/O's with an I/O error status rather than hanging onto them, when a Logical Volume is powerfailed. PHCO_8205: "panic lv_activatevg: num_pvols" After vgcfgrestore'ing to ALL of the current PVs in a VG, on next full activation the system can panic if the VG is setup such that the PVs are NOT sequentially allocated within the VGDA. The problem is with vgcfgbackup command which doesn't write a valid lvmconf file when there are missing PVs in a VG. PHCO_7978: This patch added a new option "-R" to vgcfgrestore command to force restoring configuration data when there are physical volume mismatch between the kernel and the backup file due to missing pvlinks. PHCO_7829: This patch is to fix vgcfgbackup so that when vgcfgbackup is run, NIKE alternate link will not be invoked to avoid auto_trespass from happening. PHCO_6701: This patch contain the following fixes: 1. a new option "-f" is added to vgreduce to force reduce a missing pv in a vg. 2. lvlnboot -v will continue to display boot information regardless of inactivated vg on the system. 3. change sleep interval from 5 sec to 1 sec to allow NIKE disks timeout on reading LVM meta data. PHCO_6519: This patch fix vgscan to support > 255 disks on a system. PHCO_6356: LVM commands displayed incorrect information when NIKE disks are configured. For example: 1. lvlnboot displayed incorrect boot disk information. 2. vgscan rebuild lvmtab incorrectly with pv links. 3. pvdisplay displayed incorrect primary link information. PHCO_6270: "vgchange -a r " fails. See the symptoms for PHCO_5664. PHCO_5841: when doing manually hot swap disk, lvreduce hang PHCO_5664: The command "vgchange -a r " fails with the message: Activation mode requested for the volume group conflicts with configured mode. Defect Description: PHCO_11288: A new option was added to the -r flag of the lvchange and lvcreate commands. This option is -r N (making the total acceptable values of -r "ynN") which means, do not mark any bad blocks in this LV in the bad block directory, and also do not relocate any bad blocks. All LVs created on EMC Symmetrix disks should be configured with this option. PHCO_10060: A check was added to the LVM main module to make sure each in-coming parameter have size within the maximum length allowed. PHCO_8624: Modify LVM library routine to fix the following problem: The tm_year field of the tm structure returned by the localtime() library call was assumed to contain the last 2 digits of the year. But it really contains the number of years from 1900. This was corrected by replacing "tm_year" by "tm_year%100". PHCO_8458: This change supports a new lvchange command line option "-t" which allows the administrator the option to limit the time LVM holds I/O to be retried on logical volumes when disks are powerfailed. Without using this option, LVM will hold the i/os as long as there is is one disk where the data resides which may eventually return. Using this option would cause LVM to give up on the powerfailed disk and return i/o errors to the user application using the logical volume. This feature is obviously not to be used indiscriminately. For many High Availability applications, having i/os held in kernel indefinitely is not acceptable. Most customers should not need to use the new option. PHCO_8205: This patch fixes a problem in vgcfgbackup command to backup all PV structures on the disk. Don't try to calculate how many PV needed to be backed up, because PVs in the VG might not necessary contigeous. PHCO_7978: The vgcfgrestore command normally refuses to restore configuration data when there are physical volume mismatch between the kernel and the backup file. The following message will be displayed to inform user on the problem: "Mismatch between the backup file and the running kernel: Kernel indicates X disks for /dev/vgname, /etc/lvmconf/vgname indicates Y disks. Cannot proceed with the restoration. Deactivate the Volume Group and try again." PHCO_7829: When the customer used the vgcfgbackup command, and using alternate paths with LVM, the vgcfgbackup command seems to leave the LUNS in the NIKE assigned to the storage processor which isn't the owner. This wouldn't be a problem except that when logical volume is doubly mirrored, when 3 LUNS are involded. It appears that when newfs is invoked, the time that it takes to switch the LUNS back to the primary storage process is too much for the mkfs command, and the following errors result: mksf(hfs): read of lvm record failed mkfs(hfs): resource temporarily unavailable PHCO_6701: 1. a new option "-f" is added to vgreduce to force reduce a missing pv in a vg. 2. lvlnboot -v will continue to display boot information regardless of inactivated vg on the system. 3. change sleep interval from 5 sec to 1 sec to allow NIKE disks timeout on reading LVM meta data. PHCO_6519: This patch fix vgscan to support > 255 disks on a system. PHCO_6356: LVM commands displayed incorrect information when NIKE disks are configured. For example: 1. lvlnboot displayed incorrect boot disk information. 2. vgscan rebuild incorrect lvmtab with pv links. 3. pvdisplay displayed incorrect primary link information. PHCO_6270: The /usr/sbin/lvchange command contained in PHCO_5841 does not fix the vgchange -a r problem described in PHCO_5664. However, the /sbin/lvchange command contained in PHCO_5841 does work correctly. This patch places the archive-linked LVM command into the /usr/sbin directory, to provide full patch functionality until new shared-linked versions (which supports NLS) can be made available. PHCO_5841: lvreduce hang when doing manually hot swap bad disk. PHCO_5664: The read only activation of the volume group fails whenever the Service guard cluster services are active in the system or when the volume group has been activated in exclusive mode in another system. There is no workaround for this defect. SR: 4701346494 4701334763 4701334698 1653175737 5003325159 5003299669 5000697466 5003295139 5003286278 5003284935 4701297390 4701352278 Patch Files: /usr/lib/nls/msg/C/lvm.cat /usr/newconfig/sbin/lvchange.mir /usr/newconfig/usr/sbin/lvchange.mir /sbin/lvchange /usr/sbin/lvchange /usr/share/man/man1m.Z/lvchange.1m /usr/share/man/man1m.Z/lvcreate.1m what(1) Output: /usr/lib/nls/msg/C/lvm.cat: None /usr/newconfig/sbin/lvchange.mir: $Revision: 74.33.3.38 $ MIRROR PRODUCT PATCH/10_01 PHCO_9419 $Revision: 74.9.1.16.1.81 $ PATCH_10_01: lvdisplay.o lvlnboot.o lvremove.o lvr mboot.o pvchange.o pvcreate.o pvdisplay.o pvmove.o sdstolvm.o vgcfgbackup.o vgcfgre store.o vgchange.o vgcreate.o vgdisplay.o vgexport.o vgextend.o vgimport.o vgreduc e.o vgremove.o vgscan.o lvchange_m.o lvcr eate_m.o lvextend_m.o lvmerge_m.o lvmmain_ m.o lvreduce_m.o lvsplit_m.o lvsync_m.o n omwcsyncd_m.o vgsync_m.o hpux_rel_m.o 97/0 6/05 /usr/newconfig/usr/sbin/lvchange.mir: $Revision: 74.33.3.38 $ MIRROR PRODUCT PATCH_10_01: lvdisplay.o lvlnboot.o lvremove.o lvr mboot.o pvchange.o pvcreate.o pvdisplay.o pvmove.o sdstolvm.o vgcfgbackup.o vgcfgre store.o vgchange.o vgcreate.o vgdisplay.o vgexport.o vgextend.o vgimport.o vgreduc e.o vgremove.o vgscan.o lvchange_m.o lvcr eate_m.o lvextend_m.o lvmerge_m.o lvmmain_ m.o lvreduce_m.o lvsplit_m.o lvsync_m.o n omwcsyncd_m.o vgsync_m.o hpux_rel_m.o 97/0 6/05 /sbin/lvchange: $Revision: 74.33.3.38 $ PATCH/10_01 PHCO_9419 $Revision: 74.9.1.16.1.81 $ PATCH_10_01: lvdisplay.o lvlnboot.o lvremove.o lvr mboot.o pvchange.o pvcreate.o pvdisplay.o pvmove.o sdstolvm.o vgcfgbackup.o vgcfgre store.o vgchange.o vgcreate.o vgdisplay.o vgexport.o vgextend.o vgimport.o vgreduc e.o vgremove.o vgscan.o lvchange.o lvcrea te.o lvextend.o lvmerge.o lvmmain.o lvred uce.o lvsplit.o lvsync.o nomwcsyncd.o vgs ync.o hpux_rel.o 97/06/05 /usr/sbin/lvchange: $Revision: 74.33.3.38 $ PATCH_10_01: lvdisplay.o lvlnboot.o lvremove.o lvr mboot.o pvchange.o pvcreate.o pvdisplay.o pvmove.o sdstolvm.o vgcfgbackup.o vgcfgre store.o vgchange.o vgcreate.o vgdisplay.o vgexport.o vgextend.o vgimport.o vgreduc e.o vgremove.o vgscan.o lvchange.o lvcrea te.o lvextend.o lvmerge.o lvmmain.o lvred uce.o lvsplit.o lvsync.o nomwcsyncd.o vgs ync.o hpux_rel.o 97/06/05 /usr/share/man/man1m.Z/lvchange.1m: None /usr/share/man/man1m.Z/lvcreate.1m: None cksum(1) Output: 2405702126 32571 /usr/lib/nls/msg/C/lvm.cat 2912287699 589824 /usr/newconfig/sbin/lvchange.mir 3871638755 376832 /usr/newconfig/usr/sbin/lvchange.mir 1163659494 577536 /sbin/lvchange 1628749219 360448 /usr/sbin/lvchange 684674406 4267 /usr/share/man/man1m.Z/lvchange.1m 327346829 5249 /usr/share/man/man1m.Z/lvcreate.1m Patch Conflicts: None Patch Dependencies: s700: 10.01: PHKL_11563 s800: 10.01: PHKL_11294 Hardware Dependencies: None Other Dependencies: None Supersedes: PHCO_5664 PHCO_5841 PHCO_6270 PHCO_6356 PHCO_6519 PHCO_6701 PHCO_7829 PHCO_7978 PHCO_8205 PHCO_8458 PHCO_8624 PHCO_10060 Equivalent Patches: PHCO_10826: s700: 10.20 s800: 10.20 Patch Package Size: 1970 KBytes Installation Instructions: Please review all instructions and the Hewlett-Packard SupportLine User Guide or your Hewlett-Packard support terms and conditions for precautions, scope of license, restrictions, and, limitation of liability and warranties, before installing this patch. ------------------------------------------------------------ 1. Back up your system before installing a patch. 2. Login as root. 3. Copy the patch to the /tmp directory. 4. Move to the /tmp directory and unshar the patch: cd /tmp sh PHCO_11288 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHCO_11288.depot 5b. For a homogeneous NFS Diskless cluster run swcluster on the server to install the patch on the server and the clients: swcluster -i -b This will invoke swcluster in the interactive mode and force all clients to be shut down. WARNING: All cluster clients must be shut down prior to the patch installation. Installing the patch while the clients are booted is unsupported and can lead to serious problems. The swcluster command will invoke an swinstall session in which you must specify: alternate root path - default is /export/shared_root/OS_700 source depot path - /tmp/PHCO_11288.depot To complete the installation, select the patch by choosing "Actions -> Match What Target Has" and then "Actions -> Install" from the Menubar. 5c. For a heterogeneous NFS Diskless cluster: - run swinstall on the server as in step 5a to install the patch on the cluster server. - run swcluster on the server as in step 5b to install the patch on the cluster clients. By default swinstall will archive the original software in /var/adm/sw/patch/PHCO_11288. If you do not wish to retain a copy of the original software, you can create an empty file named /var/adm/sw/patch/PATCH_NOSAVE. Warning: If this file exists when a patch is installed, the patch cannot be deinstalled. Please be careful when using this feature. It is recommended that you move the PHCO_11288.text file to /var/adm/sw/patch for future reference. To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHCO_11288.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None