SGI Logo
 
 

Patch 2150 : Cachefs rollup #2 for 6.2 : [IRIX 6.2]
INDEX

  • Relations
  • Release Notes
  • Inst Subsystem Requirements
  • Inst Subsystem Checksums
  • Inst Subsystem File Listings
  • Download Patch


    RELATIONS

    This patch replaces the following patches:
    1230, 1310, 1435, 1473, 1577, 1692, 1893

    This patch is incompatible with the following patches:
    2226, 1915

    This patch fixes the following bugs:
    314902 - cfsadmin -d should remove only the cacheid direcotry
    345665 - cachefs_replacement startup is very long for large caches
    352995 - cachefs fails connectathon link and rename test
    358274 - 6.2-mar09a.G kernel panic on mount_cachefs
    360624 - default timeouts for disconnected mounts are too long
    360625 - read-only operations on disconnected mounts can return ETIMEDOUT
    367153 - cachefs performance for the find command is very poor
    374667 - root `ls -l` access on a 6.2 cachefs (nfsv2) mounted directory hangs
    375237 - cachefs ignores write errors from the back file system
    375241 - cachefs_async sometimes does not exit on umount
    384554 - cfsadmin -d and -l options
    384664 - cachefs breack df output
    385264 - device number reported by stat for cachefs files can change
    385290 - cachefs misses some attribute changes
    390567 - the cachefs statvfs function reports incorrect statistics
    390675 - TAKE fix cachefs mounts so that autofs can unmount them
    402185 - patch 1310 introduced a violation of open/creat semantics in cachefs
    402194 - cachefs always tries to write the file header after file removal
    405727 - mount: out of logical swap space during fork/sproc
    418543 - cachefs sometimes returns ESTALE when the front file is stale
    424985 - cachefs panic: ip27 ficus-sep08a
    426367 - application core dump running fron cachefs file system
    428212 - cachefs sometimes truncates files when writing them
    428213 - in disconnected mode, close on cachefs sometimes returns ETIMEDOUT
    429372 - cachefs will sometimes write garbage to a file
    429619 - cachefs sometimes updates attributes but not file contents
    429630 - init of cached objects in cachefs blocks for strict consistency
    432075 - accessing a FIFO on cachefs causes the process to hang
    433400 - memory leak in cachefs
    433924 - "find . -print" on a cachefs file system can exhaust system memory
    436525 - cachefs fails to remove front directories
    437118 - deadlock in cachefs when a stale front dir is found during mkdir
    437490 - vnode free list management fails
    438864 - mount_cachefs dumps core
    447170 - cfsadmin docs confusing
    448837 - cachefs_replacement is not killed when cachefs is stopped
    448838 - parallel cachefs mounts can fail
    467109 - cachefs attempts updates for uncached directories
    467110 - cachefs attempts invalidation for uncached files
    468008 - PANIC: KERNEL FAULT -seems to be cachefs related patch 1692 IS installed
                    

    469487 - cachefs does not destroy one of its synchronization variables
    471294 - default cachefs attribute timeouts are too long
    489877 - cachefs options seem to have no effect
    495034 - cachefs panics with patch 1893 installed
    496419 - mv sometimes fails on cachefs
    500863 - .. sometimes disappears on cachefs file systems
    503478 - cachefs hangs when creating a file
    505199 - cachefs hangs when moving a directory to itself
    505335 - in cachefs, writes with a file lock held can cause a loss of data
    511130 - cachefs does not properly cache hard links
    512140 - cachefs replacement overhead is too high
    517771 - cachefs can hang for long periods of time


    RELEASE NOTES

    1. Patch SG0002150 Release Note

           This release note describes patch SG0002150 to IRIX 6.2.
    
    
    1.1 Supported Hardware Platforms
           This patch contains bug fixes for all platforms.
    
    
    1.2 Supported Software Platforms
           This patch contains bug fixes for ONC3 (version 1232792120)
           on a system running IRIX 6.2.  The software cannot be
           installed on other configurations.
    
           This patch replaces patches SG0001230, SG0001310, SG0001435,
           SG0001473, SG0001577, SG0001692 and SG0001893.  It also
           requires Patch SG0001499.
    
    
    1.3 Bugs Fixed by Patch SG0002150
           This patch contains fixes for the following bugs in IRIX
           6.2.  Bug numbers from Silicon Graphics bug tracking system
           are included for reference.
    
              o Processes accessing CacheFS files will sometimes hang
                for long periods of time.  (Bug #517771)
    
              o Cachefs replacement is too slow due to excessive
                overhead.  (Bug #512140)
    
              o Hard links are not properly cached.  (Bug #511130)
    
              o CacheFS hangs when moving a directory to itself.  (Bug
                #505199)
    
              o Writes with a file lock held can cause a loss of data.
                (Bug #505335)
    
              o CacheFS can hang when creating a file.  (Bug #503478)
    
              o The mv(1) command sometimes fails on cachefs file
                systems.  (Bug #496419)
    
              o With patch SG0001893 installed, CacheFS will sometimes
                panic when a file or directory is being removed.  (Bug
                #495034)
    
              o Cachefs sometimes hangs.  (Bug #495034)
    
    
              o The cachefs replacement daemon sometimes exits
                unexpectedly.  (Bug #495034)
    
              o It can appear that disconnected operation does not
                work.  Also, there is a performance problem with file
                lookup.  (Bug #489877)
    
              o Sometimes ".." disappears.  (Bug #500863)
    
              o The CacheFS replacement daemon (cachefs_replacement)
                performs very poorly.  (Bug #345665)
    
              o The default attribute timeouts used by CacheFS are too
                long.  This can result in certain types of file
                corruption due to stale attributes being used.  (Bug
                #471294)
    
              o CacheFS attempts updates for uncached directories.
                (Bugs #467109 and 468008)
    
              o CacheFS attempts invalidation for uncached files.
                (Bugs #467110 and 468008)
    
              o CacheFS does not destroy one of its synchronization
                variables.  (Bug #469487)
    
              o CacheFS fails to remove stale front directories.  (Bug
                #436525)
    
              o CacheFS will deadlock when a stale front directory is
                found during mkdir.  (Bug #437118)
    
              o CacheFS causes the vnode free list to fill up with
                vnodes, thus causing exhaustion of kernel memory.  (Bug
                #437490)
    
              o The cfsadmin(1M) documentation is confusing.  (Bug
                #447170)
    
              o The daemon cachefs_replacement is not stopped when
                CacheFS is.  (Bug #448837)
    
              o Parallel CacheFS mounts can fail for a clean cache
                directory.  (Bug #448838)
    
              o The CacheFS mount command mount_cachefs dumps core when
                the disconnect option is used.  (Bug #438864)
    
              o Executing them command "find . -print" on a cachefs
                file system whose back file system is sufficiently
                large, can lead to the exhaustion of system memory.
    
    
                (Bug #433924)
    
              o CacheFS will leak memory on certain read errors.  (Bug
                #433400)
    
              o Any access to a FIFO file on a CacheFS file system will
                cause the process to hang.  (Bug #432075)
    
              o CacheFS mounts can run out of swap space when a
                sufficient number of cachefs entries exist in
                /etc/fstab.  In order to correct this, mount(1M) must
                be instructed to limit the number of parallel mounts.
                This is to be done with the "-m" option provided in
                Patch SG0001499.  Refer to cachefs(4) for information
                about using this option for cachefs mounts.  (Bug
                #405727)
    
              o CacheFS sometimes returns ESTALE when the front file is
                stale.  (Bug #418543)
    
              o CacheFS always tries to write the file header after
                file removal.  (bug #402194)
    
              o CacheFS sometimes updates attributes but not file
                contents.  (bug #429619)
    
              o In its strict consistency mode, the initialization of
                cached objects will always block when getting the
                attributes from the back file system even when the
                disconnect mount option has been specified.  (Bug
                #429630)
    
              o CacheFS will cause a panic when the cache label file
                has been corrupted or is from an older version of
                CacheFS.  (Bug #424985)
    
              o Applications will sometimes dump core when running on
                CacheFS due to file renames on the server or another
                client.  (Bug #426367)
    
              o CacheFS will occasionally truncate files when they are
                written.  (Bug #428212)
    
              o In disconnected mode, close(2) on a file on cachefs
                will sometimes return ETIMEDOUT.  (Bug #428213)
    
              o CacheFS will sometimes corrupt a file when it is
                written.  (Bug #429372)
    
              o The open/creat semantics are violated by cachefs.  (Bug
                #402185)
    
    
              o The df command reports incorrect or peculiar values for
                CacheFS file systems.  (Bug #390567)
    
              o Autofs is unable to unmount CacheFS file systems once
                it has mounted them.  (Bug #390675)
    
              o The cfsadmin "-d" option should remove only the cacheid
                directory (or directories).  (Bug #314902)
    
              o The cfsadmin options "-d" and "-l" do not function
                properly.  (Bug #384554)
    
              o df(1) does not function properly when its argument is a
                file or directory on a CacheFS file system and that
                file or directory is not the mount point.  (Bug
                #384664)
    
              o The device number reported by stat(2) for files and
                directories on CacheFS file systems can change without
                the file system having been unmounted and remounted.
                Also, the device number may not be correct.  (Bug
                #385264)
    
              o Cachefs misses some types of attribute changes.  It
                will miss those changes which do not result in the
                modification time being changed such as permission and
                ownership changes.  (Bug #385290)
    
              o If CacheFS is used with a NFS back-end filesystem and
                quotas are in use on the NFS filesystem the IRIX 6.2
                CacheFS client doesn't always understand how to handle
                "quotas exceeded" situations.  This is because CacheFS
                ignores write errors from the back file system.  (Bug
                #375237)
    
              o System shutdown is unclean since CacheFS_async is
                holding filesystems open.  This is because
                CacheFS_async sometimes does not exit when the file
                system it serves is unmounted.  (bug #375241)
    
              o ls hangs when accessing a directory for which the user
                does not have the appropriate permission.  (Bug
                #374667)
    
              o CacheFS performs very poorly for commands such as find
                which do nothing more than lookups.  The reason for
                this is that the file headers for the cached files are
                bing read and written synchronously during lookup.
                (Bug #367153).
    
    
              o When a link is made to a file on a CacheFS file system,
                the link count is not updated.  (Bug #352995)
    
              o When a disconnected mode CacheFS mount is performed for
                a server which is down, the kernel will panic.  (Bug
                #358274)
    
              o Cachefs uses the default NFS timeout for disconnected
                mounts.  This is too long.  The timeout should be set
                to the minimum allowed value.  (Bug #360624)
    
              o It is possible for some CacheFS operations on
                disconnected mounts to succeed but still return
                ETIMEDOUT.  This is because the error number is not
                cleared in some cases for network errors from back file
                system operations.  (Bug #360625)
    
    
    1.4 Subsystems Included in Patch SG0002150
           This patch release includes these subsystems:
    
              o patchSG0002150.onc3_eoe_sw.cachefs
    
              o patchSG0002150.onc3_eoe_man.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.  The inst program does not allow you to install
           patches that are incompatible with your hardware or
           software.
    
           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.  Initiate the installation sequence. Type
    
                 Inst> go
    
             3.  You may find that two patches have been marked as
                 incompatible.  (The installation tools reject an
                 installation request if an incompatibility is
                 detected.)  If this occurs, you must deselect one of
                 the patches.
    
                 Inst> keep patchSGxxxxxxx
    
                 where xxxxxxx is the patch number.
    
             4.  After completing the installation process, exit the
                 inst program by typing
    
                 Inst> quit
    
    
    1.6 Patch Removal Instructions
           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.
    
    
    1.7 Known Problems
    
    
    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):

    60328      5   patchSG0002150
    35642     11   patchSG0002150.idb
    50748     19   patchSG0002150.onc3_eoe_man
    30789   2427   patchSG0002150.onc3_eoe_sw
    

    INST SUBSYSTEM FILE LISTINGS

    The following lists the files which get installed from each subsystem in the patch:

    patchSG0002150.onc3_eoe_man.cachefs
    usr/share/catman/a_man/cat1/cfsadmin.z
    usr/share/catman/a_man/cat4/cachefs.z

    patchSG0002150.onc3_eoe_sw.cachefs
    etc/init.d/cachefs
    usr/cpu/sysgen/IP17boot/cachefs.a
    usr/cpu/sysgen/IP17boot/cachefsidbg.o
    usr/cpu/sysgen/IP19boot/cachefs.a
    usr/cpu/sysgen/IP19boot/cachefsidbg.o
    usr/cpu/sysgen/IP20boot/cachefs.a
    usr/cpu/sysgen/IP20boot/cachefsidbg.o
    usr/cpu/sysgen/IP21boot/cachefs.a
    usr/cpu/sysgen/IP21boot/cachefsidbg.o
    usr/cpu/sysgen/IP22boot/cachefs.a
    usr/cpu/sysgen/IP22boot/cachefsidbg.o
    usr/cpu/sysgen/IP25boot/cachefs.a
    usr/cpu/sysgen/IP25boot/cachefsidbg.o
    usr/cpu/sysgen/IP26boot/cachefs.a
    usr/cpu/sysgen/IP26boot/cachefsidbg.o
    usr/cpu/sysgen/IP28boot/cachefs.a
    usr/cpu/sysgen/IP28boot/cachefsidbg.o
    usr/etc/cachefs_replacement
    usr/etc/cfsadmin
    usr/etc/mount_cachefs
    usr/relnotes/patchSG0002150/TC
    usr/relnotes/patchSG0002150/ch1.z
    var/sysgen/mtune/cachefs


    DOWNLOAD PATCH
    Download Server File Name Date Added Size Download
    download.sgi.com patchSG0002150.tar 25-Aug-1997 1.2 Mb FTP HTTP Add to download cart 
    download.sgi.com patchSG0002150.tardist 25-Aug-1997 1.2 Mb FTP HTTP
     
    FTP = download using FTP protocol
    HTTP = download using HTTP protocol
    Add to shopping list= store in your basket for downloading later
  •  


    Document Id: 20021117065431-IRIXPatch-1088