This page lists publically-released patches for Veritas Enterprise Products.
For Product GA build, see Veritas Entitlement Management System(VEMS) by clicking the Veritas Support 'Licensing' option.
For information on private patches, contact Veritas Technical Support.
For NetBackup Enterprise Server and NetBackup Server patches, see the NetBackup Downloads.
Patches for your product can have a variety of names. These names are based on product, component, or package names. For more information on patch naming conventions and the relationship between products, components, and packages, see the SORT online help.
5.0MP1RP2a6 VRTSvxfs
Obsolete
The latest patch(es) : 5.0MP1RP4a VRTSvxfs 
Sign in if you want to rate this patch.

 Basic information
Release type: Rolling Patch
Release date: 2007-08-30
OS update support: None
Technote: 294266
Documentation: None
Popularity: 935 viewed    47 downloaded
Download size: 33.71 MB
Checksum: 1590780980

 Applies to one or more of the following products:
File System 5.0 MP1 On Solaris 10 SPARC
File System 5.0 MP1 On Solaris 8 SPARC
File System 5.0 MP1 On Solaris 9 SPARC
Storage Foundation 5.0 MP1 On Solaris 10 SPARC
Storage Foundation 5.0 MP1 On Solaris 8 SPARC
Storage Foundation 5.0 MP1 On Solaris 9 SPARC
Storage Foundation Cluster File System 5.0 MP1 On Solaris 10 SPARC
Storage Foundation Cluster File System 5.0 MP1 On Solaris 8 SPARC
Storage Foundation Cluster File System 5.0 MP1 On Solaris 9 SPARC
Storage Foundation for DB2 5.0 MP1 On Solaris 10 SPARC
Storage Foundation for DB2 5.0 MP1 On Solaris 8 SPARC
Storage Foundation for DB2 5.0 MP1 On Solaris 9 SPARC
Storage Foundation for Oracle 5.0 MP1 On Solaris 10 SPARC
Storage Foundation for Oracle 5.0 MP1 On Solaris 8 SPARC
Storage Foundation for Oracle 5.0 MP1 On Solaris 9 SPARC
Storage Foundation for Oracle RAC 5.0 MP1 On Solaris 10 SPARC
Storage Foundation for Oracle RAC 5.0 MP1 On Solaris 8 SPARC
Storage Foundation for Oracle RAC 5.0 MP1 On Solaris 9 SPARC
Storage Foundation for Sybase 5.0 MP1 On Solaris 10 SPARC
Storage Foundation for Sybase 5.0 MP1 On Solaris 8 SPARC
Storage Foundation for Sybase 5.0 MP1 On Solaris 9 SPARC
Storage Foundation HA 5.0 MP1 On Solaris 10 SPARC
Storage Foundation HA 5.0 MP1 On Solaris 8 SPARC
Storage Foundation HA 5.0 MP1 On Solaris 9 SPARC

 Obsolete patches, incompatibilities, superseded patches, or other requirements:

This patch is obsolete. It is superseded by: Release date
5.0MP1RP4a VRTSvxfs 2008-07-10
5.0MP1RP3a3 VRTSvxfs (obsolete) 2008-01-16

This patch supersedes the following patches: Release date
5.0MP1RP1c VRTSvxfs (obsolete) 2007-05-03

This patch requires: Release date
5.0 MP1b 2007-03-17

 Fixes the following incidents:
1003062, 1018519, 1029534, 1032402, 1040623, 1060317, 1061342, 1069070, 1069187, 1090572, 1090575, 1090578, 1093626, 1096460, 1096468, 1111711, 1113356

 Patch ID:
125761-02, 125762-02, 125760-02

 Readme file  [Save As...]
Patch-ID# 125760-02
Keywords: VxFS 5.0MP1 VERITAS File System Rolling Patch 02
Synopsis: VRTSvxfs 5.0MP1RP2: Rolling Patch for File System 5.0MP1
Date: Aug/30/2007

Solaris Release: 8

SunOS Release: 5.8

Unbundled Product: VERITAS VxFS

Unbundled Release: 5.0MP1

Topic: VxFS 5.0MP1 RP2 Multiple Fixes Patch

Relevant Architectures: sparc

BugId's fixed with this patch: 6305689

Changes incorporated in this version: 6305689

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 123200-02

Obsoleted by: 

Files included with this patch:

$ROOT_2.8/etc/fs/vxfs/mount
$ROOT_2.8/etc/fs/vxfs/qioadmin
$ROOT_2.8/etc/init.d/vxfsldlic
$ROOT_2.8/etc/rc2.d/S01vxfsldlic
$ROOT_2.8/etc/vx/cdslimitstab
$ROOT_2.8/kernel/drv/sparcv9/vxportal
$ROOT_2.8/kernel/drv/vxportal
$ROOT_2.8/kernel/drv/vxportal.conf
$ROOT_2.8/kernel/fs/sparcv9/vxfs
$ROOT_2.8/kernel/fs/vxfs
$ROOT_2.8/opt/VRTSvxfs/include/dmapi.h
$ROOT_2.8/opt/VRTSvxfs/include/sys/fs/dmapi.h
$ROOT_2.8/opt/VRTSvxfs/include/sys/fs/dmapi_size.h
$ROOT_2.8/opt/VRTSvxfs/include/sys/fs/dmattr_drv.h
$ROOT_2.8/opt/VRTSvxfs/include/sys/fs/vxio.h
$ROOT_2.8/opt/VRTSvxfs/lib/libxdsm.a
$ROOT_2.8/opt/VRTSvxfs/lib/sparcv9/vxckptpriv.so
$ROOT_2.8/opt/VRTSvxfs/lib/sparcv9/vxfspriv.so
$ROOT_2.8/opt/VRTSvxfs/lib/sparcv9/vxfsutil.so
$ROOT_2.8/opt/VRTSvxfs/lib/vxckptpriv.so
$ROOT_2.8/opt/VRTSvxfs/lib/vxfspriv.so
$ROOT_2.8/opt/VRTSvxfs/lib/vxfsutil.so
$ROOT_2.8/opt/VRTSvxfs/sbin/cp
$ROOT_2.8/opt/VRTSvxfs/sbin/cpio
$ROOT_2.8/opt/VRTSvxfs/sbin/fcladm
$ROOT_2.8/opt/VRTSvxfs/sbin/fiostat
$ROOT_2.8/opt/VRTSvxfs/sbin/fsadm
$ROOT_2.8/opt/VRTSvxfs/sbin/fsapadm
$ROOT_2.8/opt/VRTSvxfs/sbin/fscat
$ROOT_2.8/opt/VRTSvxfs/sbin/fscdsadm
$ROOT_2.8/opt/VRTSvxfs/sbin/fscdsconv
$ROOT_2.8/opt/VRTSvxfs/sbin/fscdstask
$ROOT_2.8/opt/VRTSvxfs/sbin/fsckpt_restore
$ROOT_2.8/opt/VRTSvxfs/sbin/fsckptadm
$ROOT_2.8/opt/VRTSvxfs/sbin/fsclustadm
$ROOT_2.8/opt/VRTSvxfs/sbin/fsenvadm
$ROOT_2.8/opt/VRTSvxfs/sbin/fsmap
$ROOT_2.8/opt/VRTSvxfs/sbin/fsvoladm
$ROOT_2.8/opt/VRTSvxfs/sbin/getext
$ROOT_2.8/opt/VRTSvxfs/sbin/ls
$ROOT_2.8/opt/VRTSvxfs/sbin/mv
$ROOT_2.8/opt/VRTSvxfs/sbin/qiomkfile
$ROOT_2.8/opt/VRTSvxfs/sbin/qiostat
$ROOT_2.8/opt/VRTSvxfs/sbin/setext
$ROOT_2.8/opt/VRTSvxfs/sbin/vxdump
$ROOT_2.8/opt/VRTSvxfs/sbin/vxedquota
$ROOT_2.8/opt/VRTSvxfs/sbin/vxenablef
$ROOT_2.8/opt/VRTSvxfs/sbin/vxfsckd
$ROOT_2.8/opt/VRTSvxfs/sbin/vxfsconvert
$ROOT_2.8/opt/VRTSvxfs/sbin/vxfsstat
$ROOT_2.8/opt/VRTSvxfs/sbin/vxgetmsg
$ROOT_2.8/opt/VRTSvxfs/sbin/vxlsino
$ROOT_2.8/opt/VRTSvxfs/sbin/vxquot
$ROOT_2.8/opt/VRTSvxfs/sbin/vxquota
$ROOT_2.8/opt/VRTSvxfs/sbin/vxquotaoff
$ROOT_2.8/opt/VRTSvxfs/sbin/vxquotaon
$ROOT_2.8/opt/VRTSvxfs/sbin/vxrepquota
$ROOT_2.8/opt/VRTSvxfs/sbin/vxrestore
$ROOT_2.8/opt/VRTSvxfs/sbin/vxupgrade
$ROOT_2.8/opt/VRTSvxms/lib/map/libvxfs.so
$ROOT_2.8/opt/VRTSvxms/lib/map/libvxfssnap.so
$ROOT_2.8/opt/VRTSvxms/lib/map/sparcv9/libvxfs.so
$ROOT_2.8/opt/VRTSvxms/lib/map/sparcv9/libvxfssnap.so
$ROOT_2.8/usr/kernel/drv/fdd
$ROOT_2.8/usr/kernel/drv/fdd.conf
$ROOT_2.8/usr/kernel/drv/sparcv9/fdd
$ROOT_2.8/usr/lib/fs/vxfs/df
$ROOT_2.8/usr/lib/fs/vxfs/ff
$ROOT_2.8/usr/lib/fs/vxfs/fsck
$ROOT_2.8/usr/lib/fs/vxfs/fsckall
$ROOT_2.8/usr/lib/fs/vxfs/fsdb
$ROOT_2.8/usr/lib/fs/vxfs/fstyp
$ROOT_2.8/usr/lib/fs/vxfs/fsvmap
$ROOT_2.8/usr/lib/fs/vxfs/mkfs
$ROOT_2.8/usr/lib/fs/vxfs/ncheck
$ROOT_2.8/usr/lib/fs/vxfs/sparcv7/fsck
$ROOT_2.8/usr/lib/fs/vxfs/sparcv7/fsck_logv10
$ROOT_2.8/usr/lib/fs/vxfs/sparcv7/fsck_logv11
$ROOT_2.8/usr/lib/fs/vxfs/sparcv7/fsck_logv9
$ROOT_2.8/usr/lib/fs/vxfs/sparcv9/fsck
$ROOT_2.8/usr/lib/fs/vxfs/sparcv9/fsck_logv10
$ROOT_2.8/usr/lib/fs/vxfs/sparcv9/fsck_logv11
$ROOT_2.8/usr/lib/fs/vxfs/umount
$ROOT_2.8/usr/lib/fs/vxfs/vxtunefs

Problem Description:
--------------------

(1003062) Introduced VX_CFS_IRWLOCKEOF and VX_CFS_SIZEVALID flags.
          Updated vx_get_inodedata() to skip taking IGLOCK update
          for regular file of nomtime mount when VX_CFS_SIZEVALID
          flag is set.
(1018519) Corrected call to vol_dereserve() with device name as
	  argument.
(1029534) Reverted VX_GET_NINODE back to 57 by switching it with
          VX_GET_VMMBUFCOUNT.
(1032402) Remove VX_DELAY for performance gains.
(1040623) Introduced reclaim inactive attribute inodes during
	  vxupgrade of disk layout version 5 to 6.
(1060317) Updated vx_read1() to invalidate whole file that is
	  accessed via fdd, before and after doing I/O request.
(1061342) Update vx_logbuf_clean(). Move VX_DELAY(1) to later
	  position after releasing fs_logclean_slk lock.
(1069070) Introduce a new field (valid) in dotdot_list to capture
	  if there is any valid parent (exist in both parent's db
	  and it's attr area.) With this fix, fsck will able to
	  detect any invalid attr entry.
(1069187) ACLs inherited from default ACLs allow greater
	  permission than requested in some cases
6305689 (1090572, 1111711) fsync() times increase as file size grows
	  on VxFS even with few dirty pages VMODSORT.
(1090575) Make sure the correct fs passed to vx_device_lookup if the
	  I/O failed to the snapped file system.
(1090578) Need a better method of detecting it the current
	  thread is a nfsd thread.
(1093626) Back out changes made to vx_extfree() by incident 544066
          as they cause a hang with very large extents.
(1096460) Check wehether the thread already locked ownership before
	  trying to get ownership.
(1096468) Check for validity of fs pointer before accessing fields
	  in fs structure. This is needed because fs structure may
	  not exist at this point, because of a clean unmount.
(1113356) Fixed an issue that if run_replay() returned before the
	  calling process_frees(), then replay_done() might have
	  tried to free memory that had not been allocated.

(from 125760-01)
(1003062) Introduced VX_CFS_IRWLOCKEOF and VX_CFS_SIZEVALID flags.
          Updated vx_get_inodedata() to skip taking IGLOCK update
          for regular file of nomtime mount when VX_CFS_SIZEVALID
          flag is set.
(1003259) Revised fix of 595487 and initialized tracks and fetapes
          variables to 0.
(1005252) performance enhancements for replay: add tail pointers for
          the lists we build in add_lwrdones() and add_truncs() so
          they're O(N) instead of O(N^2). process the freed-extent
          info between the two passes of replay to convert it from
          unsorted lists to a sorted array that we can binary-search
          it in check_frees(). this processing pass is also fundamentally
          O(N^2) just like the previous check_frees(), but it's more or
          less linear time in practice, so the O(N log N) of the binary
          search will dominate.
(1005783) Removed triggering of inactive processing on ENOSPC from vx_rdwr().

Patch Installation Instructions:
--------------------------------

VRTSvxfs 5.0MP1 patch must be installed first before applying this patch.

For the Solaris 8 release, refer to the online manual 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/110434-07

The following example removes a patch from a standalone system:

       example# patchrm 104945-02

For additional examples please see the appropriate manual pages.


Special Install Instructions:
-----------------------------

You need to use the shutdown command to reboot the system after patch
installation or de-installation:

     shutdown -g0 -y -i6
Patch-ID# 125761-02
Keywords: VxFS 5.0MP1 VERITAS File System Rolling Patch 02
Synopsis: VRTSvxfs 5.0MP1RP2: Rolling Patch for File System 5.0MP1
Date: Aug/30/2007

Solaris Release: 9

SunOS Release: 5.9

Unbundled Product: VERITAS VxFS

Unbundled Release: 5.0MP1

Topic: VxFS 5.0MP1 RP2 Multiple Fixes Patch

Relevant Architectures: sparc

BugId's fixed with this patch: 6305689

Changes incorporated in this version: 6305689

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 123201-02

Obsoleted by: 

Files included with this patch:

$ROOT_2.9/etc/fs/vxfs/mount
$ROOT_2.9/etc/fs/vxfs/qioadmin
$ROOT_2.9/etc/init.d/vxfsldlic
$ROOT_2.9/etc/rc2.d/S01vxfsldlic
$ROOT_2.9/etc/vx/cdslimitstab
$ROOT_2.9/kernel/drv/sparcv9/vxportal
$ROOT_2.9/kernel/drv/vxportal
$ROOT_2.9/kernel/drv/vxportal.conf
$ROOT_2.9/kernel/fs/sparcv9/vxfs
$ROOT_2.9/kernel/fs/vxfs
$ROOT_2.9/opt/VRTSvxfs/include/dmapi.h
$ROOT_2.9/opt/VRTSvxfs/include/sys/fs/dmapi.h
$ROOT_2.9/opt/VRTSvxfs/include/sys/fs/dmapi_size.h
$ROOT_2.9/opt/VRTSvxfs/include/sys/fs/dmattr_drv.h
$ROOT_2.9/opt/VRTSvxfs/include/sys/fs/vxio.h
$ROOT_2.9/opt/VRTSvxfs/lib/libxdsm.a
$ROOT_2.9/opt/VRTSvxfs/lib/sparcv9/vxckptpriv.so
$ROOT_2.9/opt/VRTSvxfs/lib/sparcv9/vxfspriv.so
$ROOT_2.9/opt/VRTSvxfs/lib/sparcv9/vxfsutil.so
$ROOT_2.9/opt/VRTSvxfs/lib/vxckptpriv.so
$ROOT_2.9/opt/VRTSvxfs/lib/vxfspriv.so
$ROOT_2.9/opt/VRTSvxfs/lib/vxfsutil.so
$ROOT_2.9/opt/VRTSvxfs/sbin/cp
$ROOT_2.9/opt/VRTSvxfs/sbin/cpio
$ROOT_2.9/opt/VRTSvxfs/sbin/fcladm
$ROOT_2.9/opt/VRTSvxfs/sbin/fiostat
$ROOT_2.9/opt/VRTSvxfs/sbin/fsadm
$ROOT_2.9/opt/VRTSvxfs/sbin/fsapadm
$ROOT_2.9/opt/VRTSvxfs/sbin/fscat
$ROOT_2.9/opt/VRTSvxfs/sbin/fscdsadm
$ROOT_2.9/opt/VRTSvxfs/sbin/fscdsconv
$ROOT_2.9/opt/VRTSvxfs/sbin/fscdstask
$ROOT_2.9/opt/VRTSvxfs/sbin/fsckpt_restore
$ROOT_2.9/opt/VRTSvxfs/sbin/fsckptadm
$ROOT_2.9/opt/VRTSvxfs/sbin/fsclustadm
$ROOT_2.9/opt/VRTSvxfs/sbin/fsenvadm
$ROOT_2.9/opt/VRTSvxfs/sbin/fsmap
$ROOT_2.9/opt/VRTSvxfs/sbin/fsvoladm
$ROOT_2.9/opt/VRTSvxfs/sbin/getext
$ROOT_2.9/opt/VRTSvxfs/sbin/ls
$ROOT_2.9/opt/VRTSvxfs/sbin/mv
$ROOT_2.9/opt/VRTSvxfs/sbin/qiomkfile
$ROOT_2.9/opt/VRTSvxfs/sbin/qiostat
$ROOT_2.9/opt/VRTSvxfs/sbin/setext
$ROOT_2.9/opt/VRTSvxfs/sbin/vxdump
$ROOT_2.9/opt/VRTSvxfs/sbin/vxedquota
$ROOT_2.9/opt/VRTSvxfs/sbin/vxenablef
$ROOT_2.9/opt/VRTSvxfs/sbin/vxfsckd
$ROOT_2.9/opt/VRTSvxfs/sbin/vxfsconvert
$ROOT_2.9/opt/VRTSvxfs/sbin/vxfsstat
$ROOT_2.9/opt/VRTSvxfs/sbin/vxgetmsg
$ROOT_2.9/opt/VRTSvxfs/sbin/vxlsino
$ROOT_2.9/opt/VRTSvxfs/sbin/vxquot
$ROOT_2.9/opt/VRTSvxfs/sbin/vxquota
$ROOT_2.9/opt/VRTSvxfs/sbin/vxquotaoff
$ROOT_2.9/opt/VRTSvxfs/sbin/vxquotaon
$ROOT_2.9/opt/VRTSvxfs/sbin/vxrepquota
$ROOT_2.9/opt/VRTSvxfs/sbin/vxrestore
$ROOT_2.9/opt/VRTSvxfs/sbin/vxupgrade
$ROOT_2.9/opt/VRTSvxms/lib/map/libvxfs.so
$ROOT_2.9/opt/VRTSvxms/lib/map/libvxfssnap.so
$ROOT_2.9/opt/VRTSvxms/lib/map/sparcv9/libvxfs.so
$ROOT_2.9/opt/VRTSvxms/lib/map/sparcv9/libvxfssnap.so
$ROOT_2.9/usr/kernel/drv/fdd
$ROOT_2.9/usr/kernel/drv/fdd.conf
$ROOT_2.9/usr/kernel/drv/sparcv9/fdd
$ROOT_2.9/usr/lib/fs/vxfs/df
$ROOT_2.9/usr/lib/fs/vxfs/ff
$ROOT_2.9/usr/lib/fs/vxfs/fsck
$ROOT_2.9/usr/lib/fs/vxfs/fsckall
$ROOT_2.9/usr/lib/fs/vxfs/fsdb
$ROOT_2.9/usr/lib/fs/vxfs/fstyp
$ROOT_2.9/usr/lib/fs/vxfs/fsvmap
$ROOT_2.9/usr/lib/fs/vxfs/mkfs
$ROOT_2.9/usr/lib/fs/vxfs/ncheck
$ROOT_2.9/usr/lib/fs/vxfs/sparcv7/fsck
$ROOT_2.9/usr/lib/fs/vxfs/sparcv7/fsck_logv10
$ROOT_2.9/usr/lib/fs/vxfs/sparcv7/fsck_logv11
$ROOT_2.9/usr/lib/fs/vxfs/sparcv7/fsck_logv9
$ROOT_2.9/usr/lib/fs/vxfs/sparcv9/fsck
$ROOT_2.9/usr/lib/fs/vxfs/sparcv9/fsck_logv10
$ROOT_2.9/usr/lib/fs/vxfs/sparcv9/fsck_logv11
$ROOT_2.9/usr/lib/fs/vxfs/umount
$ROOT_2.9/usr/lib/fs/vxfs/vxtunefs

Problem Description:
--------------------

(1003062) Introduced VX_CFS_IRWLOCKEOF and VX_CFS_SIZEVALID flags.
          Updated vx_get_inodedata() to skip taking IGLOCK update
          for regular file of nomtime mount when VX_CFS_SIZEVALID
          flag is set.
(1018519) Corrected call to vol_dereserve() with device name as
	  argument.
(1029534) Reverted VX_GET_NINODE back to 57 by switching it with
          VX_GET_VMMBUFCOUNT.
(1032402) Remove VX_DELAY for performance gains.
(1040623) Introduced reclaim inactive attribute inodes during
	  vxupgrade of disk layout version 5 to 6.
(1060317) Updated vx_read1() to invalidate whole file that is
	  accessed via fdd, before and after doing I/O request.
(1061342) Update vx_logbuf_clean(). Move VX_DELAY(1) to later
	  position after releasing fs_logclean_slk lock.
(1069070) Introduce a new field (valid) in dotdot_list to capture
	  if there is any valid parent (exist in both parent's db
	  and it's attr area.) With this fix, fsck will able to
	  detect any invalid attr entry.
(1069187) ACLs inherited from default ACLs allow greater
	  permission than requested in some cases
6305689 (1090572, 1111711) fsync() times increase as file size grows
	  on VxFS even with few dirty pages VMODSORT.
(1090575) Make sure the correct fs passed to vx_device_lookup if the
	  I/O failed to the snapped file system.
(1090578) Need a better method of detecting it the current
	  thread is a nfsd thread.
(1093626) Back out changes made to vx_extfree() by incident 544066
          as they cause a hang with very large extents.
(1096460) Check wehether the thread already locked ownership before
	  trying to get ownership.
(1096468) Check for validity of fs pointer before accessing fields
	  in fs structure. This is needed because fs structure may
	  not exist at this point, because of a clean unmount.
(1113356) Fixed an issue that if run_replay() returned before the
	  calling process_frees(), then replay_done() might have
	  tried to free memory that had not been allocated.

(from 125761-01)
(1003062) Introduced VX_CFS_IRWLOCKEOF and VX_CFS_SIZEVALID flags.
          Updated vx_get_inodedata() to skip taking IGLOCK update
          for regular file of nomtime mount when VX_CFS_SIZEVALID
          flag is set.
(1003259) Revised fix of 595487 and initialized tracks and fetapes
          variables to 0.
(1005252) performance enhancements for replay: add tail pointers for
          the lists we build in add_lwrdones() and add_truncs() so
          they're O(N) instead of O(N^2). process the freed-extent
          info between the two passes of replay to convert it from
          unsorted lists to a sorted array that we can binary-search
          it in check_frees(). this processing pass is also fundamentally
          O(N^2) just like the previous check_frees(), but it's more or
          less linear time in practice, so the O(N log N) of the binary
          search will dominate.
(1005783) Removed triggering of inactive processing on ENOSPC from vx_rdwr().

Patch Installation Instructions:
--------------------------------

VRTSvxfs 5.0MP1 patch must be installed first before applying this patch.

For the Solaris 9 release, refer to the online manual 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/110434-07

The following example removes a patch from a standalone system:

       example# patchrm 104945-02

For additional examples please see the appropriate manual pages.


Special Install Instructions:
-----------------------------
Sun introduced a page ordering vnode optimization in Solaris 9 and 10.
The optimization includes a new vnode flag, VMODSORT, which when turned on
indicates that the Virtual Memory (VM) should maintain the v_pages list
in an order depending on if a page is modified or unmodified.

Veritas File System (VxFS) can now take advantage of that flag,
which can result in significant performance improvements on operations
that depend on flushing, such as fsync.

This optimization requires that Sun BugID's 6393251 and 6538758 be fixed
in the kernel release on which this patch is being installed.
Enabling VxFS VMODSORT functionality without the correct OS kernel patches
can result in data corruption.

Required operating system patches:

  (Solaris 9 SPARC)
     122300-04 (releasing to SunSolve on April 4 2007)
        dependent patches:
        112233-12
        117171-17
        118558-39

     IDR124127-05 (has both VMODSORT fixes)


To enable VxFS VMODSORT functionality, the following line must be added
to the /etc/system file after the vxfs forceload:

	set vxfs:vx_vmodsort=1  * enable vxfs vmodsort

To disable VxFS VMODSORT functionality, the following line must be added
to the /etc/system file after the vxfs forceload:

	set vxfs:vx_vmodsort=0  * disable vxfs vmodsort


You need to use the shutdown command to reboot the system after patch
installation or de-installation:

     shutdown -g0 -y -i6
Patch-ID# 125762-02
Keywords: VxFS 5.0MP1 VERITAS File System Rolling Patch 01
Synopsis: VRTSvxfs 5.0MP1RP2: Rolling Patch for File System 5.0MP1
Date: Aug/30/2007

Solaris Release: 10

SunOS Release: 5.10

Unbundled Product: VERITAS VxFS

Unbundled Release: 5.0MP1

Topic: VxFS 5.0MP1 RP2 Multiple Fixes Patch

Relevant Architectures: sparc

BugId's fixed with this patch: 6305689

Changes incorporated in this version: 6305689

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 123202-02

Obsoleted by: 

Files included with this patch:

$ROOT_2.10/etc/fs/vxfs/mount
$ROOT_2.10/etc/fs/vxfs/qioadmin
$ROOT_2.10/etc/vx/cdslimitstab
$ROOT_2.10/kernel/drv/sparcv9/vxportal
$ROOT_2.10/kernel/drv/vxportal.conf
$ROOT_2.10/kernel/fs/sparcv9/vxfs
$ROOT_2.10/lib/svc/method/vxfsldlic
$ROOT_2.10/opt/VRTSvxfs/include/dmapi.h
$ROOT_2.10/opt/VRTSvxfs/include/sys/fs/dmapi.h
$ROOT_2.10/opt/VRTSvxfs/include/sys/fs/dmapi_size.h
$ROOT_2.10/opt/VRTSvxfs/include/sys/fs/dmattr_drv.h
$ROOT_2.10/opt/VRTSvxfs/include/sys/fs/vxio.h
$ROOT_2.10/opt/VRTSvxfs/lib/libxdsm.a
$ROOT_2.10/opt/VRTSvxfs/lib/sparcv9/vxckptpriv.so
$ROOT_2.10/opt/VRTSvxfs/lib/sparcv9/vxfspriv.so
$ROOT_2.10/opt/VRTSvxfs/lib/sparcv9/vxfsutil.so
$ROOT_2.10/opt/VRTSvxfs/lib/vxckptpriv.so
$ROOT_2.10/opt/VRTSvxfs/lib/vxfspriv.so
$ROOT_2.10/opt/VRTSvxfs/lib/vxfsutil.so
$ROOT_2.10/opt/VRTSvxfs/sbin/cp
$ROOT_2.10/opt/VRTSvxfs/sbin/cpio
$ROOT_2.10/opt/VRTSvxfs/sbin/fcladm
$ROOT_2.10/opt/VRTSvxfs/sbin/fiostat
$ROOT_2.10/opt/VRTSvxfs/sbin/fsadm
$ROOT_2.10/opt/VRTSvxfs/sbin/fsapadm
$ROOT_2.10/opt/VRTSvxfs/sbin/fscat
$ROOT_2.10/opt/VRTSvxfs/sbin/fscdsadm
$ROOT_2.10/opt/VRTSvxfs/sbin/fscdsconv
$ROOT_2.10/opt/VRTSvxfs/sbin/fscdstask
$ROOT_2.10/opt/VRTSvxfs/sbin/fsckpt_restore
$ROOT_2.10/opt/VRTSvxfs/sbin/fsckptadm
$ROOT_2.10/opt/VRTSvxfs/sbin/fsclustadm
$ROOT_2.10/opt/VRTSvxfs/sbin/fsenvadm
$ROOT_2.10/opt/VRTSvxfs/sbin/fsmap
$ROOT_2.10/opt/VRTSvxfs/sbin/fsvoladm
$ROOT_2.10/opt/VRTSvxfs/sbin/getext
$ROOT_2.10/opt/VRTSvxfs/sbin/ls
$ROOT_2.10/opt/VRTSvxfs/sbin/mv
$ROOT_2.10/opt/VRTSvxfs/sbin/qiomkfile
$ROOT_2.10/opt/VRTSvxfs/sbin/qiostat
$ROOT_2.10/opt/VRTSvxfs/sbin/setext
$ROOT_2.10/opt/VRTSvxfs/sbin/vxdump
$ROOT_2.10/opt/VRTSvxfs/sbin/vxedquota
$ROOT_2.10/opt/VRTSvxfs/sbin/vxenablef
$ROOT_2.10/opt/VRTSvxfs/sbin/vxfsckd
$ROOT_2.10/opt/VRTSvxfs/sbin/vxfsconvert
$ROOT_2.10/opt/VRTSvxfs/sbin/vxfsstat
$ROOT_2.10/opt/VRTSvxfs/sbin/vxgetmsg
$ROOT_2.10/opt/VRTSvxfs/sbin/vxlsino
$ROOT_2.10/opt/VRTSvxfs/sbin/vxquot
$ROOT_2.10/opt/VRTSvxfs/sbin/vxquota
$ROOT_2.10/opt/VRTSvxfs/sbin/vxquotaoff
$ROOT_2.10/opt/VRTSvxfs/sbin/vxquotaon
$ROOT_2.10/opt/VRTSvxfs/sbin/vxrepquota
$ROOT_2.10/opt/VRTSvxfs/sbin/vxrestore
$ROOT_2.10/opt/VRTSvxfs/sbin/vxupgrade
$ROOT_2.10/opt/VRTSvxms/lib/map/libvxfs.so
$ROOT_2.10/opt/VRTSvxms/lib/map/libvxfssnap.so
$ROOT_2.10/opt/VRTSvxms/lib/map/sparcv9/libvxfs.so
$ROOT_2.10/opt/VRTSvxms/lib/map/sparcv9/libvxfssnap.so
$ROOT_2.10/usr/kernel/drv/fdd.conf
$ROOT_2.10/usr/kernel/drv/sparcv9/fdd
$ROOT_2.10/usr/lib/fs/vxfs/df
$ROOT_2.10/usr/lib/fs/vxfs/ff
$ROOT_2.10/usr/lib/fs/vxfs/fsck
$ROOT_2.10/usr/lib/fs/vxfs/fsckall
$ROOT_2.10/usr/lib/fs/vxfs/fsdb
$ROOT_2.10/usr/lib/fs/vxfs/fstyp
$ROOT_2.10/usr/lib/fs/vxfs/fsvmap
$ROOT_2.10/usr/lib/fs/vxfs/mkfs
$ROOT_2.10/usr/lib/fs/vxfs/ncheck
$ROOT_2.10/usr/lib/fs/vxfs/sparcv7/fsck
$ROOT_2.10/usr/lib/fs/vxfs/sparcv7/fsck_logv10
$ROOT_2.10/usr/lib/fs/vxfs/sparcv7/fsck_logv11
$ROOT_2.10/usr/lib/fs/vxfs/sparcv7/fsck_logv9
$ROOT_2.10/usr/lib/fs/vxfs/sparcv9/fsck
$ROOT_2.10/usr/lib/fs/vxfs/sparcv9/fsck_logv10
$ROOT_2.10/usr/lib/fs/vxfs/sparcv9/fsck_logv11
$ROOT_2.10/usr/lib/fs/vxfs/umount
$ROOT_2.10/usr/lib/fs/vxfs/vxtunefs
$ROOT_2.10/var/svc/manifest/system/vxfs/vxfsldlic.xml

Problem Description:
--------------------

(1003062) Introduced VX_CFS_IRWLOCKEOF and VX_CFS_SIZEVALID flags.
          Updated vx_get_inodedata() to skip taking IGLOCK update
          for regular file of nomtime mount when VX_CFS_SIZEVALID
          flag is set.
(1018519) Corrected call to vol_dereserve() with device name as
	  argument.
(1029534) Reverted VX_GET_NINODE back to 57 by switching it with
          VX_GET_VMMBUFCOUNT.
(1032402) Remove VX_DELAY for performance gains.
(1040623) Introduced reclaim inactive attribute inodes during
	  vxupgrade of disk layout version 5 to 6.
(1060317) Updated vx_read1() to invalidate whole file that is
	  accessed via fdd, before and after doing I/O request.
(1061342) Update vx_logbuf_clean(). Move VX_DELAY(1) to later
	  position after releasing fs_logclean_slk lock.
(1069070) Introduce a new field (valid) in dotdot_list to capture
	  if there is any valid parent (exist in both parent's db
	  and it's attr area.) With this fix, fsck will able to
	  detect any invalid attr entry.
(1069187) ACLs inherited from default ACLs allow greater
	  permission than requested in some cases
6305689 (1090572, 1111711) fsync() times increase as file size grows
	  on VxFS even with few dirty pages VMODSORT.
(1090575) Make sure the correct fs passed to vx_device_lookup if the
	  I/O failed to the snapped file system.
(1090578) Need a better method of detecting it the current
	  thread is a nfsd thread.
(1093626) Back out changes made to vx_extfree() by incident 544066
          as they cause a hang with very large extents.
(1096460) Check wehether the thread already locked ownership before
	  trying to get ownership.
(1096468) Check for validity of fs pointer before accessing fields
	  in fs structure. This is needed because fs structure may
	  not exist at this point, because of a clean unmount.
(1113356) Fixed an issue that if run_replay() returned before the
	  calling process_frees(), then replay_done() might have
	  tried to free memory that had not been allocated.

(from 125762-01)
(1003062) Introduced VX_CFS_IRWLOCKEOF and VX_CFS_SIZEVALID flags.
          Updated vx_get_inodedata() to skip taking IGLOCK update
          for regular file of nomtime mount when VX_CFS_SIZEVALID
          flag is set.
(1003259) Revised fix of 595487 and initialized tracks and fetapes
          variables to 0.
(1005252) performance enhancements for replay: add tail pointers for
          the lists we build in add_lwrdones() and add_truncs() so
          they're O(N) instead of O(N^2). process the freed-extent
          info between the two passes of replay to convert it from
          unsorted lists to a sorted array that we can binary-search
          it in check_frees(). this processing pass is also fundamentally
          O(N^2) just like the previous check_frees(), but it's more or
          less linear time in practice, so the O(N log N) of the binary
          search will dominate.
(1005783) Removed triggering of inactive processing on ENOSPC from vx_rdwr().

Patch Installation Instructions:
--------------------------------

VRTSvxfs 5.0MP1 patch must be installed first before applying this patch.

For the Solaris 10 release, refer to the online manual 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/110434-07

The following example removes a patch from a standalone system:

       example# patchrm 104945-02

For additional examples please see the appropriate manual pages.


Special Install Instructions:
-----------------------------
Sun introduced a page ordering vnode optimization in Solaris 9 and 10.
The optimization includes a new vnode flag, VMODSORT, which when turned on
indicates that the Virtual Memory (VM) should maintain the v_pages list
in an order depending on if a page is modified or unmodified.

Veritas File System (VxFS) can now take advantage of that flag,
which can result in significant performance improvements on operations
that depend on flushing, such as fsync.

This optimization requires that Sun BugID's 6393251 and 6538758 be fixed
in the kernel release on which this patch is being installed.
Enabling VxFS VMODSORT functionality without the correct OS kernel patches
can result in data corruption.

Required operating system patches:

  (Solaris 10 SPARC)
     125100-04 (has 1st VMODSORT fix - released to SunSolve on March 30 2007)
        dependent patches:
        118833-36
        119042-09
        121901-01
             IDR123146-08 (has 2nd VMODSORT fix)

To enable VxFS VMODSORT functionality, the following line must be added
to the /etc/system file after the vxfs forceload:

	set vxfs:vx_vmodsort=1  * enable vxfs vmodsort

To disable VxFS VMODSORT functionality, the following line must be added
to the /etc/system file after the vxfs forceload:

	set vxfs:vx_vmodsort=0  * disable vxfs vmodsort


You need to use the shutdown command to reboot the system after patch
installation or de-installation:

     shutdown -g0 -y -i6



Read and accept Terms of Service