| 
       
        
Patch 1067 : append mode does not work on cachefs : [IRIX 5.3]
 
    INDEX 
 
 RELATIONS 
 
 RELEASE NOTES 
1. Patch SG0001067 Release Note  
       This release note describes patch SG0001067 to IRIX ONC3
       5.3.
1.1 Supported Hardware Platforms 
       This patch contains bug fixes for all hardware and software
       configurations.  The software cannot be installed on other
       configurations.
1.2 Supported Software Platforms 
       This patch contains bug fixes for all hardware and software
       configurations.  The software cannot be installed on other
       configurations.
1.3 Bugs Fixed by Patch SG0001067 
       This patch contains fixes for the following bugs in IRIX
       ONC3 5.3.  Bug numbers from Silicon Graphics bug tracking
       system are included for reference.
          o Bug report 314341 -- ls dumps core
            For large directories supplied by IRIX 5.3 servers and
            mounted via cachefs, ls on the client will dump core.
            This is because getdents(2) returns an offset for the
            next entry which causes a loop.  Cachefs takes the
            offsets for the directory entries from what is supplied
            by the back file system with no modification.  It
            assumes, however, that the offsets in the directory
            entries (d_off) are strictly increasing.  This turns
            out to not be true for some file systems on IRIX 5.3.
            It has been observed that XFS file systems supply
            directory entries whose offsets are not ordered.
            The fix for this alters how the directory data is
            cached.  Thus, the fix will not take effect until
            existing cached data is replaced.  It is advised that
            existing caches be purged after installing this patch.
          o Bug reports 309941 and 253566 -- Filesize limit
            exceeded when using cachefs
            When writing through a cachefs file system with an
            underlying xfs partition, the command terminates with a
            "Filesize limit exceeded" error.
          o Bug report 252778 -- high load average
            Due to a deadlock which can occur when a cachefs async
            daemon calls VOP_FSYNC with the FSYNC_WAIT flag,
            cachefs may hang during a sync operation.
          o Bug report 259761 -- cachefs hangs in sync
            Due to a deadlock which can occur when cachefs_fsync is
            called with the FSYNC_WAIT flag, cachefs may hang
            during a sync operation.
          o Bug report 252778 -- excessive memory use by cachefs
            CacheFS excessively allocates kernel memory.  Much of
            the memory allocated is not returned to the system
            until all CacheFS file systems have been unmounted.
            This patch changes CacheFS so that it will return
            memory to the system by freeing cnode data.  This may
            be controlled through two tunable parameters:
            maxcnodes and cachefs_max_lru.  The tunable parameter
            maxcnodes has been introduced with this patch.  It
            determines the upper bound for cnode allocation.  This
            is what might be called a "soft" boundary.  CacheFS may
            allocate more than this many cnodes, but once the upper
            bound has been exceeded, inactive cnodes will be freed.
            Tuning should be done by setting maxcnodes and
            cachefs_max_lru to low values (such as 100 and 10
            respectively), with maxcnodes being greater than
            cachefs_max_lru.  These numbers should be increased
            until the desired combination of performance and memory
            usage is obtained.  Note that maxcnodes may be set to
            be less than or equal to cachefs_max_lru.  Doing so
            will cause no problems.  It will, however, result in
            all cnodes not on the lru list being freed (i.e., their
            storage returned to the system).
            Take care to consider file access patterns when tuning.
            Commands such as du(1) and find(1) will have very
            different access patterns from make(1), cc(1) and
            ld(1).
            The above tuning method has been suggested in order
            that fragmentation of the kernel heap may be avoided.
            This will minimize both the total memory allocated to
            the kernel and the amount used by CacheFS.  Setting
            maxcnodes and cachefs_max_lru to higher values and then
            lowering them is less effective at keeping kernel
            memory usage low.  This is because the data allocated
            by CacheFS will be distributed throughout a larger heap
            area.
          o Bug report 327389 -- append mode does not work on
            cachefs
            When using ksh or tsch to append (>>) data to a cachefs
            mounted file, the data is appended to the beginning of
            the file.  sh and csh append ok.
1.4 Subsystems Included in Patch SG0001067 
       This patch release includes these subsystems:
          o patchSG0001067.onc3_eoe_sw.cachefs
1.5 Installation Instructions 
       Because you want to install only the patches for problems
       you have encountered, patch software is not installed by
       default. After reading the descriptions of the bugs fixed in
       this patch (see Section 1.3), determine the patches that
       meet your specific needs.
       If, after reading Sections 1.1 and 1.2 of these release
       notes, you are unsure whether your hardware and software
       meet the requirements for installing a particular patch, run
       inst.
       Patch software is installed like any other Silicon Graphics
       software product.  Follow the instructions in your Software
       Installation Administrator's Guide to bring up the miniroot
       form of the software installation tools.
       Follow these steps to select a patch for installation:
         1.  At the Inst>prompt, type
             install patchSGxxxxxxx
             where xxxxxxx is the patch number.
         2.  Select the desired patches for installation.
         3.  Initiate the installation sequence. Type
             Inst> go
         4.  You may find that two patches have been marked as
             incompatible.  If this occurs, you must deselect one
             of the patches.
             Inst> keep patchSGxxxxxxx
             where xxxxxxx is the patch number.
         5.  After completing the installation process, exit the
             inst program by typing
             Inst> quit
       To remove a patch, use the versions remove command as you
       would for any other software subsystem.  The removal process
       reinstates the original version of software unless you have
       specifically removed the patch history from your system.
       versions remove patchSGxxxxxxx
       where xxxxxxx is the patch number.
       To keep a patch but increase your disk space, use the
       versions removehist command to remove the patch history.
       versions removehist patchSGxxxxxxx
       where xxxxxxx is the patch number.
INST SUBSYSTEM REQUIREMENTS No Requirements Information Available. INST SUBSYSTEM CHECKSUMS These checksums help to provide a 'signature' for the patch inst image which can be used to authenticate other inst images. You can obtain this kind of output by running sum -r on the image (from the command line): 30170 2 patchSG0001067 05476 5 patchSG0001067.idb 52545 1535 patchSG0001067.onc3_eoe_sw INST SUBSYSTEM FILE LISTINGS The following lists the files which get installed from each subsystem in the patch: 
 
 DOWNLOAD PATCH 
  | 
    ||||||||||||||||||||||||||||||||||||
Document Id: 20021117063343-IRIXPatch-938 
  | 
    ||||||||||||||||||||||||||||||||||||