5.0MP1RP4a VRTSvxfs

 Basic information
Release type: Rolling Patch
Release date: 2008-07-10
OS update support: None
Technote: 305740
Documentation: None
Popularity: 2503 viewed    downloaded
Download size: 33.73 MB
Checksum: 1241137268

 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 supersedes the following patches: Release date
5.0MP1RP3a3 VRTSvxfs (obsolete) 2008-01-16
5.0MP1RP2a6 VRTSvxfs (obsolete) 2007-08-30
5.0MP1RP1c VRTSvxfs (obsolete) 2007-05-03

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

 Fixes the following incidents:
1152869, 1160745, 1182573, 1206110, 1206129, 1206965, 1208958, 1213574, 1226259, 1230337, 1230807, 1233598, 1244759, 1255524, 1255539, 1255589, 1266103, 1270110, 1270117, 1270120, 1270127, 1270132, 1275640

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

Readme file
Etrack Incidents: 1152869, 1160745, 1182573, 1206110, 1206129, 1206965, 1208958, 1213574, 1226259, 1230337, 1230807, 1233598, 1244759, 1255524, 1255539, 1255589, 1266103, 1270110, 1270117, 1270120, 1270127, 1270132, 1275640
Errors/Problems Fixed:

(1152869) Updated vx_iupdat_msg() so that on a VX_ENOTOWNER error,
          vx_iupdat_msg() drops and reacquires the ILOCK to avoid a live lock
          condition.
(1160745) Corrected vx_open to check for a force unmounted inode instead of
          check the fse_funmounted flag. Also, the force unmount flag is now
          passed to vx_iunmount().
(1182573) Limited the inode so that the inode has at most VX_NTYP4 entries
          if the entent type is VX_TYPE_DATA_4 or VX_TYPE_ZFOD_4. Otherwise,
          the inode is limited to have at most VX_NTYP8 entries.
(1206110) Fixed a panic issue by no longer taking a blocking lock on
          non-multi-AU extents that are aligned with the AU boundary.
(1206129) Changed vx_extprevfind to avoid whole AU allocations on a CFS
          secondary. Changed vx_cfs_smalltrunc to no longer try to guess about
          larger files. If a file can have a whole AU allocation, the file is
          now treated as a large truncation no matter how much space is being
          removed from the file. Even removing one block can break up a whole
          AU allocation.
(1206965) Prevented a panic that occurred after running ls -@ on a directory
          containing an empty nattr directory that was followed by a Storage
          Checkpoint mount.
(1208958) Fixed an incorrect calculation in the vxdump main() function that
          prevented the support of records of more that 2 GB with the -B option.
(1213574) VxFS now scans the iau delegations once a minute, and returns any
          delegation that is more than 3 minutes old.
(1226259) In replay_setup(), dv_estatcount and dv_estatlist are now reset to
          avoid using stale values from a previous run.
(1230337) Fixed a performance problem with rename in a large directory on the
          Solaris operating environment.
(1230807) For ACL, updated vx_populate_opts() to set the inheritance permission
          mask, i_modemask, to -1.
(1233598) Fixed a defect that sometimes caused iterations for inodes with
          VX_TYPE_IADDR_4 descriptors to skip the 5th and 6th extents.
(1244759) Updated vx_dnlc_lookup() to ensure that when moving the DNLC entry to
          the tail, the entry is either not free or is on the freelist. This
          avoids a race condition with vx_dnlc_get and vx_dnlc_enter. Also,
          updated vx_dnlc_purge_ip to use a freelist pointer from the
          vx_dnlc_freelist array, instead of he pointer derived from the hash
          value of an entry.
(1255524) Updated vx_statvfs_pri() to exclude inodes residing in ILOST holes,
          and to sum up free inodes from IAU summaries for CFS.
(1255539) Updated various functions for better management and reservation of
          transaction space. Also, fixed the preamble error recovery process
          to avoid an infinite loop.
(1255589) In vx_write(), extended the check for i_size changing that occurs
          while the glock is dropped to get the rwlock range. This prevents a
          race condition between truncating and writing, which sometimes
          allowed multiple threads to extend the file at the same time.
(1266103) Changed the typecasting from vx_u32_t to vx_u64_t of the current byte
          usage in the quota to avoid overflowing and wrapping of the values.
6668585 (1270110) Race condition in vx_page_alloc can lead to deadlock.
6499947 (1270117) Remove caching of 256 entries at once in vxquot.
(1270120) Updated vx_glock_putdata() to keep holding ILOCK during piggy pbdata
          upload. Updated vx_populate_attrdata() to serialize on the same inode.
(1270127) The cbuf freer formerly ran every 10 seconds, and freed all cbufs.
          Now, the freer runs once per second, and frees 1/8 of the LRU
          freelist. Also, if the freer finds a busy buffer, the freer now skips
          the buffer rather than aborting. The goal here is to prevent huge
          amounts of memory going into cbufs.
(1270132) Padded the vx_iostat structure to a 64-bit boundary.
(1275640) Updated vx_freesp_clear() to avoid the need to perform delayed
          extended write flushing when using fcntl to truncate file.

Install/Uninstall Instructions:

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

For the Solaris 8, 9, 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 the fixes for Sun BugID's 6393251 and 6538758
which are included in the Solaris kernel patch listed below.
Enabling VxFS VMODSORT functionality without the correct OS kernel patches
can result in data corruption.

Required operating system patches:

  (Solaris 9 SPARC)
     122300-11  (or greater)
        dependent patches:
        112233-12
        117171-17
        118558-39

  (Solaris 10 SPARC)
      127111-01 (or greater)
        dependent patches:
           120011-14 (or greater)



To enable VxFS VMODSORT functionality, the following linemust 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