Patch-ID# 113207-11 Keywords: vxfs 3.5 veritas file system maintenance patch 03 Synopsis: VERITAS File System 3.5: VxFS 3.5 Maintenance Patch 03 Date: May/19/2004 Install Requirements: Reboot after installation Solaris Release: 9 SunOS Release: 5.9 Unbundled Product: Veritas VxFS Unbundled Release: 3.5 Xref: Topic: VxFS 3.5 MP3 Multiple fixes patch Relevant Architectures: sparc BugId's fixed with this patch: 4254734 4497674 4657088 4662905 4690047 4724039 4745082 4751467 4755282 4778806 4806363 4825680 4936022 4944562 4945793 Changes incorporated in this version: 4936022 4944562 4945793 Patches accumulated and obsoleted by this patch: Patches which conflict with this patch: Patches required with this patch: Obsoleted by: Files included with this patch: /etc/fs/vxfs/mount /etc/fs/vxfs/qlogattach /etc/fs/vxfs/qlogck /etc/fs/vxfs/qlogrec /etc/init.d/qlog-startup /etc/rcS.d/S88qlog-startup /kernel/drv/sparcv9/vxportal /kernel/drv/vxportal /kernel/drv/vxportal.conf /kernel/fs/sparcv9/vxfs /kernel/fs/vxfs /opt/VRTS/bin/vxenablef /opt/VRTS/man/man1/cp_vxfs.1 /opt/VRTS/man/man1/cpio_vxfs.1 /opt/VRTS/man/man1/getext.1 /opt/VRTS/man/man1/ls_vxfs.1 /opt/VRTS/man/man1/mv_vxfs.1 /opt/VRTS/man/man1/qioadmin.1 /opt/VRTS/man/man1/qiomkfile.1 /opt/VRTS/man/man1/qiostat.1 /opt/VRTS/man/man1/setext.1 /opt/VRTS/man/man1m/df_vxfs.1m /opt/VRTS/man/man1m/ff_vxfs.1m /opt/VRTS/man/man1m/fsadm_vxfs.1m /opt/VRTS/man/man1m/fscat_vxfs.1m /opt/VRTS/man/man1m/fsck_vxfs.1m /opt/VRTS/man/man1m/fsckptadm.1m /opt/VRTS/man/man1m/fsclustadm.1m /opt/VRTS/man/man1m/fsdb_vxfs.1m /opt/VRTS/man/man1m/fstyp_vxfs.1m /opt/VRTS/man/man1m/mkfs_vxfs.1m /opt/VRTS/man/man1m/mount_vxfs.1m /opt/VRTS/man/man1m/ncheck_vxfs.1m /opt/VRTS/man/man1m/qlogadm.1m /opt/VRTS/man/man1m/qlogattach.1m /opt/VRTS/man/man1m/qlogck.1m /opt/VRTS/man/man1m/qlogclustadm.1m /opt/VRTS/man/man1m/qlogdb.1m /opt/VRTS/man/man1m/qlogdetach.1m /opt/VRTS/man/man1m/qlogdisable.1m /opt/VRTS/man/man1m/qlogenable.1m /opt/VRTS/man/man1m/qlogmk.1m /opt/VRTS/man/man1m/qlogprint.1m /opt/VRTS/man/man1m/qlogrec.1m /opt/VRTS/man/man1m/qlogrm.1m /opt/VRTS/man/man1m/qlogstat.1m /opt/VRTS/man/man1m/qlogtrace.1m /opt/VRTS/man/man1m/umount_vxfs.1m /opt/VRTS/man/man1m/vxdump.1m /opt/VRTS/man/man1m/vxedquota.1m /opt/VRTS/man/man1m/vxenablef.1m /opt/VRTS/man/man1m/vxfsconvert.1m /opt/VRTS/man/man1m/vxfsstat.1m /opt/VRTS/man/man1m/vxquot.1m /opt/VRTS/man/man1m/vxquota.1m /opt/VRTS/man/man1m/vxquotaoff.1m /opt/VRTS/man/man1m/vxquotaon.1m /opt/VRTS/man/man1m/vxrepquota.1m /opt/VRTS/man/man1m/vxrestore.1m /opt/VRTS/man/man1m/vxtunefs.1m /opt/VRTS/man/man1m/vxupgrade.1m /opt/VRTS/man/man3/vxfsu_get_ioffsets.3 /opt/VRTS/man/man4/fs_vxfs.4 /opt/VRTS/man/man4/inode_vxfs.4 /opt/VRTS/man/man4/qlog_config.4 /opt/VRTS/man/man4/tunefstab.4 /opt/VRTS/man/man7/qlog.7 /opt/VRTS/man/man7/vxfsio.7 /opt/VRTSvxfs/include/dmapi.h /opt/VRTSvxfs/include/fdd.h /opt/VRTSvxfs/include/sys/fs/dmapi.h /opt/VRTSvxfs/include/sys/fs/dmapi_size.h /opt/VRTSvxfs/include/sys/fs/dmattr_drv.h /opt/VRTSvxfs/include/sys/fs/vx_ioctl.h /opt/VRTSvxfs/include/sys/fs/vxio.h /opt/VRTSvxfs/include/vxfsutil.h /opt/VRTSvxfs/lib/.libvxfsutil.so /opt/VRTSvxfs/lib/libvxfsutil.a /opt/VRTSvxfs/lib/libxdsm.a /opt/VRTSvxfs/lib/sparcv9/.libvxfsutil.so /opt/VRTSvxfs/lib/sparcv9/libvxfsutil.a /opt/VRTSvxfs/lib/uxvxfs.txt /opt/VRTSvxfs/sbin/cp /opt/VRTSvxfs/sbin/cpio /opt/VRTSvxfs/sbin/fsadm /opt/VRTSvxfs/sbin/fscat /opt/VRTSvxfs/sbin/fsckptadm /opt/VRTSvxfs/sbin/fsclustadm /opt/VRTSvxfs/sbin/getext /opt/VRTSvxfs/sbin/ln /opt/VRTSvxfs/sbin/ls /opt/VRTSvxfs/sbin/mv /opt/VRTSvxfs/sbin/qioadmin /opt/VRTSvxfs/sbin/qiomkfile /opt/VRTSvxfs/sbin/qiostat /opt/VRTSvxfs/sbin/qlogadm /opt/VRTSvxfs/sbin/qlogckd /opt/VRTSvxfs/sbin/qlogclustadm /opt/VRTSvxfs/sbin/qlogdb /opt/VRTSvxfs/sbin/qlogdetach /opt/VRTSvxfs/sbin/qlogdisable /opt/VRTSvxfs/sbin/qlogenable /opt/VRTSvxfs/sbin/qlogmk /opt/VRTSvxfs/sbin/qlogprint /opt/VRTSvxfs/sbin/qlogrm /opt/VRTSvxfs/sbin/qlogstat /opt/VRTSvxfs/sbin/qlogtrace /opt/VRTSvxfs/sbin/setext /opt/VRTSvxfs/sbin/vxdump /opt/VRTSvxfs/sbin/vxedquota /opt/VRTSvxfs/sbin/vxenablef /opt/VRTSvxfs/sbin/vxfsckd /opt/VRTSvxfs/sbin/vxfsconvert /opt/VRTSvxfs/sbin/vxfsstat /opt/VRTSvxfs/sbin/vxquot /opt/VRTSvxfs/sbin/vxquota /opt/VRTSvxfs/sbin/vxquotaoff /opt/VRTSvxfs/sbin/vxquotaon /opt/VRTSvxfs/sbin/vxrepquota /opt/VRTSvxfs/sbin/vxrestore /opt/VRTSvxfs/sbin/vxtunefs /opt/VRTSvxfs/sbin/vxupgrade /opt/VRTSvxms/lib/map/libvxfs.so /opt/VRTSvxms/lib/map/sparcv9/libvxfs.so /usr/kernel/drv/fdd /usr/kernel/drv/fdd.conf /usr/kernel/drv/qlog /usr/kernel/drv/qlog.conf /usr/kernel/drv/sparcv9/fdd /usr/kernel/drv/sparcv9/qlog /usr/lib/fs/vxfs/df /usr/lib/fs/vxfs/ff /usr/lib/fs/vxfs/fsck /usr/lib/fs/vxfs/fsckall /usr/lib/fs/vxfs/fsdb /usr/lib/fs/vxfs/fstyp /usr/lib/fs/vxfs/mkfs /usr/lib/fs/vxfs/ncheck /usr/lib/fs/vxfs/umount /usr/lib/locale/C/LC_MESSAGES/uxvxfs /usr/lib/locale/ja/LC_MESSAGES/uxvxfs /usr/lib/locale/ja_JP.eucJP/LC_MESSAGES/uxvxfs Problem Description: -------------------- 4936022 (141795) The vxdump command fails with SIGSEGV when used on a mount point of an unmounted file system. 4944562 (136967) The system hangs due to a deadlock between the vx_putpage and vx_trunc functions. 4945793 (140167) The fstyp command returns erroneous message when executed on a non-VxFS file system. (from 113207-10) 4806363 (118013) Capitalization of "SunOS release" field in Veritas patches needs to be changed to "SunOS Release". 4662905 (127717) The acct() system call log differs between UFS and VxFS. 4254734 (124403) vxdump backs up files redundantly while doing an incremental backup of files touched with a future date. (98854) A full fsck does not clear non-zero corruption in the atime/mtime/ctime fields of a free on-disk inode. (from 113207-09) (from 113207-08) (from 113207-07) (from 113207-06) (from 113207-05) (122793) Mounting a Storage Checkpoint with the default ioerror policy failed any time the file system primary was mounted with an ioerror policy other than the default. (121942) The multi-threaded readahead performance degrades when the VxFS tunable has the default value of 1. (from 113207-04) 4825680 (93603) VxFS hangs in the vx_putpage_loopcheck() function. 4778806 (113367) In some cases, files created under a directory with default ACLs did not inherit the default ACLs. 4755282 (114509) Mount of VxFS file system panics on Solaris debug kernel. 4497674 (114404) VxFS caused a system panic in the page_find() function on Solaris debug kernel. (120439) VxFS threads hang trying to get a buffer lock, resulting in a system hang. (114735) After setting a DMAPI fsid attribute on the root inode and umounting the file system, the subsequent mount caused a panic. (119303) VxFS caused a system panic in vx_multi_bufinval() on an extent that spans two adjacent Allocation Units. (117990) The df command prints information about number of free inodes incorrectly. (117668) A segmentation fault can occur when the vxckptadm command is invoked by a non-root user. (107928) Turning on Cached QIO on a file system containing ODM files could cause a system panic. (95095) VxFS 3.5 commands were slow due to duplicate licensing checks and initializations. (73179) Unmounting a file system can cause a panic on non-SPFS systems running CVM. (from 113207-03) 4751467 (112535) vxrestore omits files when restoring a level 9 dump with -r flag. (from 113207-02) (108451) A race condition resulted when the same minor number was allocated by issueing multiple open system calls to the /dev/vxportal driver. (107855) System panicked while trying to force remove (qlogadm -f remove) a QuickLog device. (102634) NFS clients experienced poor performance when allocating blocks to files in a VxFS file system that was almost full. (from 113207-01) 4745082 (98157) The default intent logging mode is "log" when mounting a VxFS file system with the -g (global) option. 4724039 (107074) Running the "fsck -o mounted" command on a globally mounted file system generated an incorrect error message. 4690047 (104879) Panic occurred when an ioctl(2) system call was made to VxFS with a null return value pointer. 4657088 (101308) Panic occurred because PXFS file system vnodes were incorrectly interpreted as VxFS vnodes and mistakenly dereferenced. (107530) System hang occurred while trying to unmount a context view. (87699) Memory leaks occurred when using direct I/O and making a writev(2) or readv(2) system call. Patch Installation Instructions: -------------------------------- For Solaris 2.0-2.6 releases, 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. For Solaris 7-9 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/104945-02 The following example removes a patch from a standalone system: example# patchrm 104945-02 For additional examples please see the appropriate man pages. Special Installation Instruction: --------------------------------- If VxFS 113212-XX was previously installed on your system, you must remove the patch before installing patch 113207-11. To determine if 113212-XX is currently installed, enter the the following command: # /usr/bin/showrev -p | grep "Patch: 113212" You also need to use the shutdown command to reboot the system after patch installation or de-installation: shutdown -g0 -y -i6 Additional Notes: ----------------- Quota reporting and handling commands do not operate correctly if any user or group quota limits or usage exceed one terabyte (1TB). It is advisable to limit user and group quotas to less than one terabyte. 1) VERITAS 136967 (Sun BUG ID 4944562) The system hangs due to a deadlock between the vx_putpage and vx_trunc functions. From the cores, 382 threads appear to get stuck in the vx_traninit() function while trying to flush a transaction to free up log space. The thread 0x2a10344fd20 in traninit calls the vx_tflush_buffer() function and seems become stuck waiting to acquire a buffer in the vx_bc_getblk() function. This thread runs a delay loop for the buffer, and is waits to acquire the buffer (0x3007d7912f8) for device 9d00009470 and blkno 41d6660. The thread 0x2a10118fd20 also loops for the same buffer. 2) VERITAS 140167 (Sun BUG ID 4945793) The fstyp command returns an erroneous message when executed on a non-VxFS file system. An example error message is as follows: UX:vxfs fstyp: ERROR: Cannot access /devices/ssm@0,0/pci@19,600000/pci@1/SUNW,isptwo@4/sd@0,0: No such file or directory Unknown_fstyp (no matches) The lack of matches is correct, but the error message should not occur. 3) VERITAS 141795 (Sun BUG ID 4936022) The vxdump command fails with SIGSEGV when used on a mount point of an unmounted file system. The vxdump command succeeds when used on a raw device. (from 113207-10) 1) VERITAS Incident 98854 A full fsck does not clear non-zero corruption in the atime/mtime/ctime fields of a free on-disk inode. 2) VERITAS Incident 124403 (Sun BUG ID 4254734) vxdump backs up files redundantly while doing an incremental backup of files touched with a future date. 3) VERITAS Incident 127717 (Sun Bug ID 4662905) The acct() system call log for UFS is different from VxFS when executing a program that forks a child process and the sticky bit is set. 4) VERITAS Incident 118013 (Sun BUG ID 4806363) The patch README file as part of Sun patch format contains a field - SunOS release = . This should be changed to "SunOS Release". (from 113207-09) (from 113207-08) (from 113207-07) (from 113207-06) (from 113207-05) 1) VERITAS Incident 121942 The multi-threaded readahead performance degrades when the VxFS tunable has the default value of 1. 2) VERITAS Incident 122793 Mounting a Storage Checkpoint with the default ioerror policy failed any time the file system primary was mounted with an ioerror policy other than the default. (from 113207-04) 1) VERITAS Incident 107928 Turning on Cached QIO on a file system containing ODM files could lead to unexpected behavior and cause a system panic. 2) VERITAS Incident 114404 (Sun ID 4497674) System panics occurred in the page_find() function because the function is called with a non-page boundary offset by VxFS. 3) VERITAS Incident 114509 (SUN BUG ID 4755282) System panics occurred while mounting a VxFS file system on a system running Solaris debug kernel. 4) VERITAS Incident 113367 (Sun BUG ID 4778806) Files created under a directory with default ACLs may not inherit the ACLs if the inode of the directory is a reused inode of a removed directory, or until a directory is created within the directory. 5) VERITAS Incident 114735 After setting a DMAPI fsid attribute on the root inode and umounting a file system, the next mount of the file system caused a panic. This was due to trying to free more memory than had been allocated. 6) VERITAS Incident 95095 Execution time of the mount and mkfs commands was slow because they were calling licensing initialization multiple times. 7) VERITAS Incident 73179 A panic may occur when unmounting a VxFS file system on a system that has Cluster Volume Manager (CVM) installed without a SANPoint Foundation Suite (SPFS) license. 8) VERITAS Incident 117990 The df command incorrectly displays information about the number of free inodes. 9) VERITAS Incident 93603 (SUN BUG ID 4825680) VxFS hangs in the vx_putpage_loopcheck() function. 10) VERITAS Incident 120439 VxFS threads hang trying to get a VxFS buffer lock, resulting in a system hang. 11) VERITAS Incident 117668 The vxckptadm command can generate a segmentation fault when invoked by a user without superuser privileges. 12) VERITAS Incident 119303 VxFS caused a panic in vx_multi_bufinval() on an extent that spans two adjacent Allocation Units. (from 113207-03) 1) VERITAS Incident 112535 (4751467) vxrestore incorrectly omitted files by referencing an outdated maxino value. vxrestore now synchronizes the maxino value updates with incremental dump and restore to correct the problem. (from 113207-02) 1) VERITAS Incident 107855 System panicked while trying to force remove (qlogadm -f remove) a QuickLog device. 2) VERITAS Incident 108451 A problem occurred when two or more open system calls to the vxportal driver took place at the same time. Numerous utilities can open the /dev/vxportal driver. A race condition exists when more than one process can have the same minor number allocated. When this happens, only one open call can succeed; other open system calls using this same minor number allocation would fail with ENOMEM error 12. 3) VERITAS Incident 102634 NFS clients experienced poor performance when allocating blocks to files in a VxFS file system that was almost full. (from 113207-01) 1) VERITAS Incident 87699 When using Direct I/O, an application making a writev(2) or readv(2) system call generated memory leaks or caused kernel heap corruption. 2) VERITAS Incident 98157 (4745082/4620205) Changes the default intent logging mode from "delaylog" to "log" when a VxFS file system is mounted using the generic -g (global) option of the mount command. 3) VERITAS Incident 101308 (4657088) The PXFS file system uses the underlying file system type (VxFS) as its VFS layer to make it transparent to applications. So VxFS may interpret PXFS vnodes to be VxFS vnodes, mistakenly dereference the vnode as a VxFS vnode, and panic. In addition to checking for VFS type, VxFS now implements checks to determine whether a vnode is VxFS vnode. 4) VERITAS Incident 104879 (4690047) Panic occurred when an ioctl(2) system call was made to VxFS with a null return value pointer. 5) VERITAS Incident 107074 (4724039) When the "fsck -o mounted" command was run on a globally mounted file system, the error message "unable to determine if file system on device is snapped" was displayed even though the command was successful. 6) VERITAS Incident 107530 A file system hang could occur while trying to freeze a VxFS file system (during an unmount operation for example). A thread could sleep for an indefinite time (due to a missed wakeup) waiting for the log buffer to be flushed, preventing the unmount from freezing the file system. Special Install Instructions: ------------------------- None. README -- Last modified date: Wednesday, May 19, 2004