SGI Logo
 
 

Patch 2851 : XLV Rollup #5 : [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:
    1228, 1317, 1613, 2457

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

    This patch fixes the following bugs:
    250074 - user interface improvements to xlv_make
    267257 - BUG: misleading error message in xlv_make
    290849 - XLV does not display node names of volumes.
    294565 - XLV creates device nodes for incomplete volumes.
    311156 - selective xlv_assemble and plex testing
    312367 - xlvmake does not have a -h flag
    323922 - xlv_shutdown should give warning when invalid argument is given
    331525 - scheme for backing up a seperate plex
    333694 - xlv_assemble needs ability to assemble volumes individually
    341023 - Gratuitious revive for a triple-mirrored ve
    355237 - tlbmiss in xlvd_do_write_back
    357554 - PANIC: CPU 1: kern_free: null pointer while running xlv_labd
    363121 - Open of a failed device without plex software causes panic
    370878 - xlv failover doesn't work for LUNs 1-n
    375080 - XLV should have its own lock primitives
    382630 - Reproducible xlv panic in xlv_tab_free_subvol()
    389537 - xlv_assemble not making all xlv's with -a
    392195 - Losing a xlv root drive hangs system
    405757 - xlv_shutdown runs out of memory and core dumps with many xlv's
    422453 - xlv_assemble returns 0 w/o assembling volumes if plexing license
                    is not presen

    422766 - xlv_make(1m) fails to create a standalone object
    422798 - XLV can corrupt plexed roots
    426966 - BUG xlv_mgr(1m) cores detaching NULL ve from standalone plex
    438539 - xlv_labd is a memory pig
    471909 - A plex revive prevents xlv volume from mounting on /tmp
    474748 - Read error on a XLV plex revive causes a system panic
    528089 - xlvd tlbmiss when encountering lots of disk errors
    532078 - tot kudzu paniced in xfs_rootinit() on IP27
    533693 - BUG: xlv_mgr(1m) doesn't handle vol w/ duplicate name
    534748 - death of xlv_labd can hang the system
    537917 - Kudzu xlv_mgr cores on two obj w/ same node & obj name
    548381 - panic in do_striped_ve() when some ves marked &ltnull>
    558182 - Bug in licensing soft breaks xlv plexing licensing with hundreds
                    of disk


    RELEASE NOTES

    1. Patch SG0002851 Release Note

           This release note describes patch SG0002851 to IRIX 6.2.
    
    
    1.1 Supported Hardware Platforms
           This patch contains bug fixes for all platforms supported
           under Irix 6.2.  The software cannot be installed on other
           configurations.
    
    
    1.2 Supported Software Platforms
           This patch contains bug fixes for XLV on a system running
           IRIX 6.2.  The software cannot be installed on other
           configurations.
    
    
    1.3 Bugs Fixed by Patch SG0002851
           This patch contains fixes for the following bugs in IRIX
           6.2.
    
              o The xlv_mgr(1M) command could core when both the volume
                name and the nodename were the same.  This could happen
                only by removing a volume, naming a new one
                identically, and then subsequently reintroducing the
                old one.  It now prints an error message that the
                second one found has been ignored. (bug #537917)
    
              o Incomplete volume elements can cause a kernel panic.
                Occurs on mirrored plexes where different portions of
                the address range are valid on the different plex
                halves. (bug #548381)
    
              o Systems with a large number of disks could not
                successfully read the plex license file.  This is an
                O32 ABI issue where more than 255 file descriptors
                cannot be used by fopen(3). (bug #558182)
    
           This patch also "rolls up" patch 2457 that fixes the bugs
           list below:
    
              o The XLV label daemon is pinned in memory and allocates
                and frees a large structure (2MB).  Since it is pinned,
                the heap never shrinks, causing xlv_labd(1m) to be a
                memory hog. (bug #438539)
    
              o During system startup, if /tmp is a volume and there
                are plexed volumes being revived, the mount of the /tmp
                volume fails.  /tmp cannot mount until all the plexed
    
    
                volumes are revived. (bug# 471909)
    
              o During a XLV plex revive, a read error on the source
                volume element causes the system to panic with a kernel
                fault. (bug# 474748)
    
              o XLV doesn't process multiple plex errors correctly when
                receiving many disk errors, and can cause a kernel
                panic. (bug #528089)
    
              o A root volume which is either concatenated or striped
                isn't properly rejected at boot time. (bug# 532078)
    
              o xlv_mgr(1m) doesn't handle volumes with duplicate names
                but different hostnames.  (bug #533693)
    
              o The death of the xlv_labd(1m) process can cause the
                kernel to hang.  We work around this by restarting the
                deamon as necessary. (bug #534748)
    
           This patch also "rolls up" patch 1613 that fixes the bugs
           list below:
    
              o XLV can deadlock the system under high load when it
                grabs locks which prevent I/O while running
                configuration commands (i.e, xlv_assemble).  The
                xlv_assemble process may need then to acquire memory,
                causing the system to need to do I/O, resulting in
                deadlock.  (bug #375080)
    
              o Increased the number of opened volume headers file
                descriptors the XLV utilities can have. The old limit
                was 16.
    
              o Added a create command to xlv_make(1m) for writing
                newly defined objects out to affected disks without
                exiting the tool.  (bug #250074)
    
              o Added three new commands to xlv_mgr(1m).  The change
                name command renames a xlv object.  The change type
                command changes the type of an object.  The change
                ve_start command changes start address of a standalone
                volume element.  (bug #331525)
    
              o Don't allow xlv_mgr(1m) to change an active plex to
                empty using the change online command.  In order to
                force a revive, the correct procedure is to issue a
                change offline, followed by change online.
    
    
              o Corrected misleading xlv_make(1m) error message
                regarding missing block and/or character device node.
                (bug #267257)
    
              o Added a -h command line option to xlv_make(1m) so a
                nodename can be specified.  This option implies the -A
                option to not automatically invoke xlv_assemble(1m).
                (bug #312367)
    
              o The xlv_shutdown(1m) -n option takes a comma separated
                list of volume names so multiple volumes can be shut
                down.
    
              o Doing a selective xlv_shutdown (-n option) when there
                are any volumes with log subvolumes could cause xlv
                label corruption.
    
              o Fixed a problem in xlv_shutdown(1m) which caused it to
                fail with out of memory errors on large systems.  (bug
                #405757)
    
              o Xlv_shutdown(1m) failed to shut down a volume when the
                volume did not have any active volume elements.
    
              o In two different windows, simultaneously using
                xlv_shutdown(1m) and xlv_mgr(1m) to remove a volume can
                cause the a system panic.  (bug #382630)
    
              o The -a option to xlv_assemble(1m) was broken in patch
                1228.  New volumes could not be configured into the
                kernel.  (bug #389537)
    
              o Changed xlv_assemble to exit with a non-zero exit
                status if selective assemble can't assemble all of the
                volumes specified on the command line.  (bug #422453)
    
              o The xlv_mgr(1m) script all did not correctly generate
                the time of day.  Sometimes the command caused a core
                dump.
    
              o xlv_labd(1m) is automatically started if a plex revive
                request is issued and the xlv_labd does not exist.
    
              o Losing a disk drive that is part of a root volume can
                sometimes cause the system to hang.  (bug #392195)
    
              o A plexed root drive could be corrupted if one plex was
                detached/attached, and the system was then cleanly
                shutdown and rebooted.  (bug #422798)
    
    
              o Xlv_make(1m) failed to create a standalone plex or
                volume element when the inter-mixing disk partitions of
                types "xlv" and "xfs".  (bug #422766)
    
              o Xlv_mgr(1m) core dumps detaching a NULL volume element
                from a standalone plex.  (bug #426966)
    
              o Only mark the target disk online after a revive if no
                errors occured.
    
           This patch also "rolls up" patch 1228 that fixes the bugs
           list below:
    
              o Added a -s option to xlv_assemble(1m) so a list of
                logical volumes to assemble can be specified on the
                command line.  It is no longer necessary to assemble
                all logical volumes at once.  This option assists
                failover procedures for the FailSafe Product.  (bug
                #311156 & bug #333694).
    
              o XLV device nodes were created even if the volume was
                incomplete, possibly leading to the mistaken conclusion
                that the volume was usable. (bug #294565)
    
              o Xlv_assemble(1m) won't gratuitously initiate a plex
                revive for a triple-plexed volume element when the
                volume element was cleanly shutdown.  (bug #341023)
    
              o XLV displays the nodename assoicated with a volume.
                (bug #290849)
    
              o Xlv_mgr(1m) "detach" command has a new -force option so
                a missing plex or volume element can be removed. This
                allows broken disks to be easily replaced.
    
              o Xlv_mgr(1m) "show kernel" command displays plex revive
                progress.  The mapping of the subvolume open_flag value
                has been corrected.  A volume name can be specified so
                that only information pertaining to that kernel volume
                is displayed.
    
              o Xlv_make(1m) and xlv_mgr(1m) have a new -c option for
                specifying input on the command line instead of the
                interactive interface.
    
              o The system can sometimes panic when a subvolume goes
                offline.  (bug #355237 & bug #357554)
    
              o Xlv_shutdown(1m) complains and fails with a exit code
                of 1 when an invalid volume name is specified with the
    
    
                -n option.  (bug #323922)
    
              o Fixes a kernel panic if plexing software is not
                installed and an I/O error occurs on a RAID device.
                (bug #363121)
    
              o Fail over to an alternate controller on a dual
                controller SGI RAID device only works on lun 0.  Luns
                other than 0 were not properly switched over to the
                alternate path.  (bug #370878)
    
    
    1.4 Subsystems Included in Patch SG0002851
           This patch release includes these subsystems:
    
              o patchSG0002851.eoe_sw.unix
    
              o patchSG0002851.eoe_sw.xlv
    
              o patchSG0002851.eoe_sw.xlvplex
    
    
    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.
    
    

    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):

    22933      6   patchSG0002851
    50196     70   patchSG0002851.eoe_man
    05291   3235   patchSG0002851.eoe_sw
    41313     22   patchSG0002851.idb
    

    INST SUBSYSTEM FILE LISTINGS

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

    patchSG0002851.eoe_man.unix
    usr/share/catman/a_man/cat1/xlv_assemble.z
    usr/share/catman/a_man/cat1/xlv_make.z
    usr/share/catman/a_man/cat1/xlv_mgr.z
    usr/share/catman/a_man/cat1/xlv_shutdown.z

    patchSG0002851.eoe_sw.unix
    usr/cpu/sysgen/IP17boot/xlvplexstubs.a
    usr/cpu/sysgen/IP17boot/xlvstubs.a
    usr/cpu/sysgen/IP19boot/xlvplexstubs.a
    usr/cpu/sysgen/IP19boot/xlvstubs.a
    usr/cpu/sysgen/IP20boot/xlvplexstubs.a
    usr/cpu/sysgen/IP20boot/xlvstubs.a
    usr/cpu/sysgen/IP21boot/xlvplexstubs.a
    usr/cpu/sysgen/IP21boot/xlvstubs.a
    usr/cpu/sysgen/IP22boot/xlvplexstubs.a
    usr/cpu/sysgen/IP22boot/xlvstubs.a
    usr/cpu/sysgen/IP25boot/xlvplexstubs.a
    usr/cpu/sysgen/IP25boot/xlvstubs.a
    usr/cpu/sysgen/IP26boot/xlvplexstubs.a
    usr/cpu/sysgen/IP26boot/xlvstubs.a
    usr/cpu/sysgen/IP28boot/xlvplexstubs.a
    usr/cpu/sysgen/IP28boot/xlvstubs.a
    usr/include/sys/xlv_base.h
    usr/include/sys/xlv_lock.h
    usr/relnotes/patchSG0002851/TC
    usr/relnotes/patchSG0002851/ch1.z
    var/sysgen/master.d/xlv

    patchSG0002851.eoe_sw.xlv
    etc/init.d/xlv
    sbin/xlv_assemble
    sbin/xlv_mgr
    sbin/xlv_shutdown
    usr/cpu/sysgen/IP17boot/xlv.a
    usr/cpu/sysgen/IP17boot/xlvidbg.o
    usr/cpu/sysgen/IP19boot/xlv.a
    usr/cpu/sysgen/IP19boot/xlvidbg.o
    usr/cpu/sysgen/IP20boot/xlv.a
    usr/cpu/sysgen/IP20boot/xlvidbg.o
    usr/cpu/sysgen/IP21boot/xlv.a
    usr/cpu/sysgen/IP21boot/xlvidbg.o
    usr/cpu/sysgen/IP22boot/xlv.a
    usr/cpu/sysgen/IP22boot/xlvidbg.o
    usr/cpu/sysgen/IP25boot/xlv.a
    usr/cpu/sysgen/IP25boot/xlvidbg.o
    usr/cpu/sysgen/IP26boot/xlv.a
    usr/cpu/sysgen/IP26boot/xlvidbg.o
    usr/cpu/sysgen/IP28boot/xlv.a
    usr/cpu/sysgen/IP28boot/xlvidbg.o
    usr/sbin/lv_to_xlv
    usr/sbin/xlv_make

    patchSG0002851.eoe_sw.xlvplex
    sbin/xlv_labd
    sbin/xlv_plexd
    sbin/xlv_set_primary
    usr/cpu/sysgen/IP17boot/xlv_plex.a
    usr/cpu/sysgen/IP19boot/xlv_plex.a
    usr/cpu/sysgen/IP20boot/xlv_plex.a
    usr/cpu/sysgen/IP21boot/xlv_plex.a
    usr/cpu/sysgen/IP22boot/xlv_plex.a
    usr/cpu/sysgen/IP25boot/xlv_plex.a
    usr/cpu/sysgen/IP26boot/xlv_plex.a
    usr/cpu/sysgen/IP28boot/xlv_plex.a


    DOWNLOAD PATCH
    Download Server File Name Date Added Size Download
    download.sgi.com patchSG0002851.tar 24-Feb-1998 1.7 Mb FTP HTTP Add to download cart 
    download.sgi.com patchSG0002851.tardist 24-Feb-1998 1.7 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: 20021117071318-IRIXPatch-1190