SGI Logo
 
 

Patch 3458 : rld rollup #15 : [IRIX 6.5.1 6.5 6.4 6.3 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:
    126, 1270, 1336, 1384, 1584, 1681, 1932, 2044, 2261, 2458, 2715, 3054, 3135, 3247, 3378

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

    This patch fixes the following bugs:
    290198 - dlopen(NULL) hangs in 6.2
    337982 - rld corruption on long LD_LIBRARY_PATH
    352206 - rld/ld not handling prefetch executables correctly
    361758 - rld loop with -default_delay_load option and libdl routines are slow
    364118 - rld loop in dlopen()
    366990 - RQS in MR 6.2 ROOT and TOOLROOT trash libraries
    383655 - rld drops core on wolf compiled -O3 and pixified
    387407 - Initialized variable differences between 5.3 and 6.2
    412725 - cx: rld hang in pthread/C++ program
    426852 - dlclose is slowwwww under IRIX 6.2
    428927 - 6.2: dlopen (..., RTLD_NOW) does not report undefs
    433288 - rld MP race
    449282 - rld crash trying to update readonly data
    482870 - rld security vulnerability
    483964 - multi-got DSO would get wrong relocation info
    503926 - suppress rld warnings about ABI in most cases
    506076 - rld:delay-load slow if many DSOs delay loaded
    506166 - rld: eliminate bloat with stubs
    507206 - rld warning message unclear
    520846 - t_splay causes stress test 'shcreate' to SIGBUS sometimes
    523673 - 7.2 RLD error: Cosmoplayer unable to load most worlds
    527001 - App CATIA: rld & dlclose problems
    530749 - rld core, patch 2261 rld LD_LIBRARY_PATH
    534245 - rld goofs up multigot DSO that moves
    536186 - Core dump loading n32 mips3 shared object
    538535 - rqsall: prevent libs with same soname from having same timestamp
    546958 - 7.2.1 ld patch for 7.2 compilers on IRIX 6.2/6.3/6.4
    547873 - /usr/lib/libXm.so.1 attempted access to unresolvable symbol
    549580 - rld: bus error in 64bit programs with -clearstack
    549912 - RLD: potential deadlock and signal-mask handling problems
    554703 - want better message in case of bad DSO/executable
    554894 - RLD performance: unnecessary conflict resolution makes dlopen slow
    555509 - RQSALL: libs fail to requickstart when so_locations region is fragmented
                    

    556199 - rqsall picks inappropriate so start addresses
    558948 - rld correct or incorrrect add_version_to_name()?
    558951 - rld messages in getEhdr() don't tell path
    560586 - RLD sgidlopen_version does not work properly
    561583 - RQSALL: computes library sizes incorrectly
    564479 - rld dirtys pages it shouldn't
    565027 - 105620 - netscape in jan18a fails to start; gets two errors, 3rd
                    time work

    566180 - RQSALL: do sensible things with old $start_address and o32 DSOs
    568510 - rqs all -infinite loop - should not take an hour+
    575110 - RLD: dlclose unmaps objects in incorrect order
    578951 - BUG - destructors for globals/statics in dlopen'd .sos not called at
    583695 - RLD: unnecessary multiple allocas in attempt_map_on_paths()
    586353 - app CATIA: call to a function defined by rld at 0xffffffff
    589044 - rld warning does not give object name
    600777 - rld does alloca in loop. Bad.
    601823 - 6.5-specific security bug in rld
    604402 - rqsall manpage example doesn't work
    608501 - rld RHF_NO_LIBRARY_REPLACEMENT is not honored
    608753 - rld/rqs failure relocating multigot dsos - 7.2.1 w/ patch 3054
    613651 - rld handles LL_REQUIRE_MINOR wrong in 6.5
    614133 - rld could be smaller with its own vsnprintf
    615089 - rld too large
    615441 - rld does extra useless lookup
    620471 - Big app slow doing DSO due to poor string compare code
    625960 - rld problem (irix 6.5.2 version) with ipanel app
    629117 - dlopen liblist processing is not breadth-first
    629128 - dlclose unmaps too soon
    629707 - App CATIA: C++ static initializers, delay load + rld
    630359 - o32 rld won't stack trace thru _rld_text_resolve
    631053 - Can't install compiler_eoe_sw64.unix in patch 3247 on IRIX 6.5.1m
    634151 - rqs uses sys_errlist to print, mishandles ENOATTR
    638915 - RQS: requickstart fails with trapped SEGV for DSOs with &gt4096 conflict
                    sym

    644389 - imgworks core dump when saving jfif or gif on 6.5.1 w/ patch 3378
    648641 - Asynchronous signals confuse rld for Catia n32
    649041 - App CATIA: float registers are lost after running DSO init section
    651001 - rld ignores -exact_version if a DSO is -delay_load tagged


    RELEASE NOTES

    1. Patch SG0003458 Release Note

           This release note describes patch SG0003458 to IRIX 6.2,
           IRIX 6.3, IRIX 6.4, IRIX 6.5-SE, IRIX 6.5 and IRIX 6.5.1.
    
    
    1.1 Supported Hardware Platforms
           This patch contains bug fixes for all hardware platforms
           running IRIX6.2, IRIX6.3, IRIX6.4, IRIX 6.5-SE, IRIX 6.5 and
           IRIX 6.5.1.
    
    
    1.2 Supported Software Platforms
           This patch contains bug fixes to rld and rld.debug (all 3
           ABIs) on a system running IRIX 6.2, IRIX 6.3, IRIX 6.4, IRIX
           6.5-SE, IRIX 6.5 or IRIX 6.5.1.  It also contains bug fixes
           to rqs, rqsall and related utilities. The patch is
           appropriate for systems with compiler_eoe from MIPSpro7.2.1
           or earlier installed (on any of the applicable IRIX
           versions).
    
           This patch replaces patches SG0001266, SG0001270, SG0001336,
           SG0001384, SG0001584, SG0001681, SG0001932, SG0002044,
           SG0002261, SG0002458, SG0002715, SG0003054, SG0003135,
           SG0003247, and SG0003378.
    
           This patch is incompatible with patches SG0002226 and
           SG0002562.
    
           The software cannot be installed on other configurations.
    
           Please Note that when installing patch SG0003458 on IRIX
           6.5.1m the compiler_eoe.sw64.unix subsystem may be displayed
           as a Downgrade (Bug #631053):
    
            DA patchSG0003458.compiler_eoe_sw64.unix [p]  1632+  ....
    
           To install this subsystem on IRIX 6.5.1m use the following
           commands under inst:
    
           Inst> i D
           Inst> set neweroverride on
           Inst> go
           Inst> quit
    
    
    
    1.3 Bugs Fixed by Patch SG0003458
           This patch contains fixes for the following bugs in IRIX
           6.2, IRIX 6.3, IRIX 6.4, IRIX 6.5-SE, IRIX 6.5 and IRIX
           6.5.1.  Bug numbers from Silicon Graphics bug tracking
           system are included for reference.
    
              o If an application did an sgidladd() or
                dlopen(...RTLD_GLOBAL), followed by a
                dlopen(...RTLD_LOCAL), (and the call to
                sgidladd/dlopen(...RTLD_GLOBAL) was itself done from a
                dlopened/dladded DSO) name lookups by rld might not
                find names made global by the sgidladd() or
                dlopen(...RTLD_GLOBAL).  This was a bug introduced in
                patch 3378.  (Bug #644389)
    
              o If a DSO or executable had more than 4096 conflict
                symbols, rqs could core dump.  Now hash table is
                defined allowing up to 262,000+ conflict symbols (the
                max size allowed: if a smaller will work a smaller is
                used).  (Bug #638915)
    
              o If a lazy-text-resolution call involved floating point
                argument registers and if a call in the -init code in
                the DSO loaded involved floating point registers the
                lazy-text call fp argument registers would be destroyed
                by the -init arguments.  Due to details of argument
                register passing this bug is seen most readily with the
                n32/64 ABIs, though it can be reproduced in any of the
                ABIs (this bug has existed since IRIX5.0 but apparently
                no one had encountered it before!).  (Bug #649041)
    
              o On delay-loads of DSO's, versions have been ignored for
                almost all earlier releases of rld.  Now rld checks the
                version number on delay-loads too.  The new _RLD_ARGS
                option -idv turns off DSO version checking for delay-
                loads in rld and rld.debug, restoring the old, broken
                behavior.  (Bug #651001)
    
              o Debugger stack traces through rld would sometimes stop
                in rld due to mistakes in some hand-written assembly
                code in rld.  Now the the stack traces show the callers
                back to main() as appropriate.  (Bug #630359)
    
              o ssrun(1) could interact with rld, causing some -init
                functions to not run correctly. This fix corrects the
                rld part in this.  [Note: it is erroneous for a signal
                handler to call dlopen(), dlclose() sgidladd(),
                sgidlopen_version(), dlsym(), or dlerror().  And no
                function call in a signal handler is allowed to cause a
                delay-load of a DSO (this is an implicit dlopen so is
    
    
                not correct).  In fact very few functions are legally
                callable from a signal handler. the dl* functions are
                not so callable.  It is up to  applications to ensure
                such does not happen.  ] (Bug #648641)
    
           The following bug fixes were originally provided in one or
           more of the patches replaced by this patch.
    
              o By default rld no longer re-evaluates name bindings on
                dlclose() (The _RLD_ARGS -f argument is accepted as
                also meaning use this new default behavior).  This
                makes dlclose() fast and eliminates many lazy-text-
                resolves.  It will also affect the operation of
                programs that rely on names being rebound to a
                different function/data item after a dlclose().  Such
                programs are erroneous. If _RLD_ARGS has the -s option
                present, the old slow method of dlclose is used (this
                is provided so erroneous programs depending on the old
                method can be made to work).  [Details:  Each name
                _should_ only be bound once by rld, but in complicated
                circumstances names can be rebound.  If the result of
                application actions (like dlclose()) is that the
                rebinding finds a different external definition the
                result can be application problems or an application
                crash (rld does not realize this has happened and will
                not give a warning).  (In addition, having a weak name
                defined in one DSO and a strong version in a DSO loaded
                later leads to 'undefined name bindings' and
                potentially inconsistent application behavior.  This
                has always been true but not mentioned earlier.).]
                (Bug #426852)
    
              o Now rld obeys the general rule that processing is
                breadth-first (loading of DSOs from liblists and
                dlsym() name resolution are examples).  [Details: In
                the past it did almost-breadth-first ordering.  Because
                seeing an error in ordering required having duplicate
                symbol definitions at least 4 levels deep in DSO nested
                liblists, it is unlikely this bug affected any
                application.  But the ABIs have always been clear and
                now rld obeys the ABIs.]  (Bug #629117)
    
              o In the case of a dlclose(), all -fini execution is done
                for a set of DSOs (where this is the dlclose of the
                last reference) before any are unmapped.  (Bug #629128)
    
              o Nested dlopen/sgidladd/delay-load  (meaning invoking
                dlopen/sgidladd/delay-load from within the -init or
                -fini code of a dlopen/sgidladd/delay-load) now works
                even in the pthreads and sproc threads cases.  Nested
    
    
                dlopen/sgidladd/delay-load was always problematical
                (though if no pthreads or sproc threads were in use it
                might have appeared to work as long as none of the
                nested dlopen/etc failed).  Use nested dlopen/sgidladd
                only when absolutely required.  Use -init only when
                absolutely required, as the nested dependencies make
                static prediction of the ordering in which the -init
                code is to be run difficult.  C++ global constructors
                ordering across compiliation units has always been
                unspecified by the C++ definition. Adding delay-load to
                the set of DSOs with mutual constructor calls makes the
                ordering even less predictable.  Using/setting
                sigprocmask(2) in -init or -fini code is not a good
                idea as the set of masks seen as ON is affected by rld.
                The precise behavior of sigprocmask(2) in -init or
                -fini code depends on which of 1) pthreads, 2) sproc
                threads, or 3) neither is in use (and the details are
                not specified in these release notes: best to avoid
                setting/resetting the sigprocmask() in -init or -fini
                code). In addition, it is still difficult to debug
                -init code in the application startup.  (Bug #629707)
    
              o If the filesystem of a DSO had no XFS attributes, rqs
                could fail (refuse to update a DSO to allow quickstart)
                and fail to print the proper reason message.  (The
                system would operate properly in spite of this rqs
                error.)  Now rqs understands that ENOATTR is not really
                a failure, allowing the DSO to be requickstarted and
                uses strerror() to properly print all errno values when
                there is an error .  (Bug #634151)
    
              o rld got delay load DSO visibility slightly wrong in
                MIPSpro7.2.1.  Too restrictive in symbol visibility.
                (Bug #547873)
    
              o rld could (with rld.debug and messages turned on in an
                sproc family with signals happening) attribute a signal
                mask to the wrong sproc.  Now has locking on the signal
                mask.  (Has no meaningful effect if not using
                rld.debug) (Bug #549912)
    
              o Made messages rejecting a DSO more explicit as to
                reason.  (Bug #554703)
    
              o rld was doing an incorrect empty version check.  (Not
                known to have visible effect in practice).  (Bug
                #558948)
    
              o Improved message in case mapping in DSO fails:
                explicitly list the DSO pathname (and reason).  (Bug
                558951).
    
    
              o Added DSO pathname on various rld warnings.  (Bug
                #589044)
    
              o rqsall got stuck in an infinite loop on a circular set
                of l: lt: entries.  (Bug #568510).
    
              o rld.debug was taking far too much stack space for
                certain debugging info.  This lead to problems with
                small stacks (such as with pthreads apps).  (BYG
                #583695)
    
              o rqs and rld incorrectly handled the 0th global entry of
                .got_2 thru the last .got_* section. This caused some
                multigot apps or DSOs to not function correctly (and
                possibly coredump).  (Bug #608753)
    
              o Significantly reduce stack space use by rld.debug.
                (Bug #600777)
    
              o rqsall allowed one to leave off the 'ifile' filename
                argumment, which was not good, since that could leave
                one with an empty /var/inst/.rqsfiles.  Now 'ifile' is
                required.  Never made sense to leave off the input file
                name.  (Bug #604402).
    
              o rld was not honoring RHF_NO_LIBRARY_REPLACE on
                LD_LIBRARY*_PATH.  (Bug #608501)
    
              o The LL_REQUIRE_MINOR flag (ld(1) -require_minor option)
                was ignored by MIPSpro7.2 and later rld.  Now it is
                honored again.  (Bug #613651)
    
              o rld smaller by 20KBytes or so.  (Bug #615089) (Bug
                #614133)
    
              o Rld made faster: small quickstarted apps are about 3%
                faster (as measured by /bin/time).  (Bug #615441)
    
              o Rld is now faster: sped up dlopen, sgidladd,
                sgidlopen_version functions.  (Bug #620471)
    
              o Erroneous calls to sgidlopen_version() with version
                argument such as "sgi2.0:sgi2.1" (instead of the
                correct "sgi2.0" or perhaps "sgi2.1" for example) were
                briefly not accepted by rld.  The erroneous
                "sgi2.0:sgi2.1" is again accepted and treated like
                "sgi2.0" (though if LL_REQUIRE_MINOR is set in the
                flags argument to the sgidlopen_version call (with
                version string  argument "sgi2.0:sgi2.1") rld will
                still fail to match any DSO version, as in previous
                releases).  (Bug #625960)
    
    
              o major 6.5-only security bug in rld. (Bug #601823)
    
              o Rld could place an invalid address (0xffffffff) into
                the GOT for symbols listed on a DSO's conflict list and
                all of whose definitions were contained in delay-load
                libraries which had not yet been loaded.  (Bug #586353)
    
              o Rld failed to dlclose dlopened DSOs at program exit.
                Rld also ran fini code in an arbitrary order, rather
                than the reverse of the order that the corresponding
                init code was processed. (Bug #575110 and Bug #578951)
    
              o Rld could fail to correctly resolve conflict symbols
                during lazy text resolution.  This was most frequently
                observed in quickstarted programs which provide their
                own implementation of the malloc family of functions
                and reference the overridden malloc from dlopened DSOs.
                (Bug #565027)
    
              o Rld performed unnecessary writes to copy-on-write
                memory pages.  This caused the memory footprint of
                incompletely quickstarted programs to be larger than
                necessary.  (Bug #564479)
    
              o Any program using -clearstack (including all 64bit mips
                abi programs) would get a bus error in rld_newmain.s
                because it used a 32-bit subtract on a 64bit stack
                pointer, accidently trashing it (Bug #549580)
    
              o This patch provides rld and rqs binaries which are
                required to run code compiled with the 7.2.1 linker
                multigot feature (Bug #546958).  This patch should be
                installed if patch SG0002715 or one of its successor
                patches is present.
    
              o Rld fails to handle multigot shared objects that are
                relocated (Bug #534245)
    
              o Rqs fails to handle multigot shared objects that are
                relocated.  This is the same as bug number 534245 in
                rld (Bug #536186).
    
              o Rld could hang when outputting error messages or
                warnings in multithreaded programs.  Whether a hang
                actually occurred would depend upon the timing of
                events and rld processing requirements (Bug #520846).
    
              o Cosmoplayer (the VRML display software) was unable to
                load most worlds due to incorrect symbol preemption in
                DSOs containing symlib tables.  The problem could
                affect other applications as well (Bug #523673).
    
    
              o Rld could, under some circumstances, unnecessarily
                reprocess conflict symbols.  This conflict resolution
                could be time-consuming for apps dlopening libraries
                containing many conflict symbols at startup (Bug
                #554894)
    
              o Sgidlopen_version failed to return handles for
                versioned DSOs when version lookup required searching
                for DSOs whose filenames had been suffixed with the
                major version number (e.g., libfoo.so.2)  This was a
                regression from the rld in the 7.1 compiler release
                (Bug #560586).
    
              o At runtime, rld uses the timestamp of a dso as the key
                to determine if this is the actual dso against which we
                originally linked.  It depends upon timestamps of dso's
                to be unique.  It assumes there can never be two
                different dso's with the same soname and same
                timestamp.  Rqsall (and rqs) run so fast that it is
                possible for two libraries with the same soname to get
                the same timestamp.  [ex. rqs'ing mips3/libm.so and
                mips4/libm.so] Rqsall now assigns unique timestamps to
                libraries with the same soname.  (Bug #538535)
    
              o Rqsall has been updated to do a better job of assigning
                load addresses to DSOs.  It now honors reasonable
                values of $start_address in the so_locations files (Bug
                #556199), computes library sizes accurately (Bug
                #561583), uses appropriate upper and lower address
                bounds for laying out o32, n32 and n64 libraries (Bug
                #566180).  The -move option now provides a mechanism
                for forcing a full requickstart of the installed DSOs.
                New load addresses are assigned to each DSO, packing
                them as tightly as possible.  (Bug #555509)
    
              o A multigot DSO that moves at run time could coredump
                the application due to incorrect handling of
                relocations.  (Bug #534245)
    
              o This patch has a correction for a bug in
                LD_LIBRARY_PATH handling introduced in patch SG0002261
                (SG0002261 was withdrawn and is not available because
                of the bug).  (Bug #530749)
    
              o If a circular DSO liblist dependency exists the
                dlopen() reference counting was wrong resulting in an
                extra reference being counted. This could mean that on
                dlclose() that the reference count did not decrement to
                0 (ever) and that any -fini code would not be run on
                the affected DSO.  Circular liblist dependencies (even
                indirect) are a bad thing and the order of execution of
    
    
                -init and -fini code is undefined. But at least now the
                reference count is correct.  (Bug #527001)
    
              o Delay-loading DSOs could be slow if there were a lot of
                DSOs. Now in many cases delay-loading is faster.  (Bug
                #506076)
    
              o The static size of rld's text is now significantly
                smaller than previous versions.  (Bug #506166).
    
              o Confusing messages about OEX flags (rarely seen) are
                now easier to understand.  (Bug #507206)
    
              o A completely useless warning about a DSO not being the
                right ABI (useless because rld simply keeps looking for
                the right DSO anyway) is now suppressed unless the
                environment variable _RLD_ARGS has the -v option.  (Bug
                503926)
    
              o Previous patches fixing the problems noted below (such
                as 2044) could fail to replace a *.sw32 subsystem: that
                subsystem no longer exists (it did in patch SG0001584
                for example) so leaving it behind was a mistake in
                patch SG0002044.  The rld set here is identical to the
                rld set in patch SG0002044, but the installation
                'replaces' rules have been adjusted to clean up the
                installation database on any IRIX 6.2 6.3 or 6.4 system
                this patch is installed on (the parts of that
                installation database that relate to rld).
    
              o When running a setuid/setgid program rld could be
                tricked into creating a security hole.  Now rld ignores
                the -log option of the _RLD_ARGS environment variable
                for setuid/setgid programs unless the real user is root
                (in addition, rld continues to ignore some environment
                variables when handling setuid/setgid programs run by
                non-root users to avoid security holes).  (Bug #482870)
    
              o When running a multigot DSO (a very very very unusual
                DSO) rld could coredump if the DSO was moved when
                loaded.  (Bug #483964)
    
              o rld could hang a pthreads process if one or more
                threads called fork(2) or if there were multiple
                threads on a single sproc process-id or if a thread
                moved from one process-id to another (in an sproc
                group).  Whether a hang occurred depended on the timing
                of events and how the events happened to relate to rld
                processing.  In addition, an annoying message about
                "GUARANTEE INIT" could be emitted by rld when the
                message was inappropriate (with certain
    
    
                processes/libraries using pthreads). (Bug #412725)
    
              o rld could coredump if it thought it had allocated an
                internal table (the msym table) but in reality the
                compilation system had built it: writing to the
                compiler-system-built table is an error (it is in
                read-only memory) and unnecessary.  (Bug #449282)
    
              o If a program did a series of dlclose(3)s and sproc(2)s
                quickly enough and the timing was just right rld would
                hang, hanging the program.  The program was killable,
                but the sproc-thread could not be continued and the
                program run was normally useless as a result of the
                hang.  (Bug #433288)
    
              o The runtime linker corrupts the user's data segment
                when long LD_LIBRARY_PATH is specified.  It usually
                results in segmentation fault while running the user
                application. (Bug #337982)
    
              o The runtime linker does not fix-up binaries with
                prefetch instructions correctly when the binaries are
                run on r8000 machines. This fix is only effective if
                one of the kernel rollup patches in the series
                beginning with patch SG0001722 is also installed (as of
                the writing of these release notes the latest kernel
                rollup patch is patch SG0002187, but be sure to check
                with with your patch provider about kernel rollup
                patches). The runtime linker may emit a message like
                "Cannot open &ltexecutable> to fix up prefetches" on
                attempting to run a binary with prefetches (such as a
                binary compiled for the R10000) on an R8000 CPU if one
                of the kernel patches is not installed.  (Bug #352206)
    
              o The runtime linker would core dump on pixified binaries
                if those binaries contain prefetch instructions. (Bug
                #383655)
    
              o The runtime linker loops when 2 delay-loaded libraries
                are linked into the same executable and the 2 libraries
                are inter-dependent on each other.  Also, the
                performance of the libdl routines are not acceptable in
                big applications when hundreds of libraries are loaded
                using dlopen calls.  (Bug #361758)
    
              o Specifing LD_LIBRARY_PATH with more than approximately
                500 characters causes rld to dump core. (Bug #337982)
    
              o The runtime linker loops in dlsym call. (Bug #364118)
    
    
              o The runtime linker loops when dlopen'ing libraries that
                have inter-dependencies. (Bug #290198)
    
              o Initialized COMMON block variables have incorrect
                values.  (Bug #387407)
    
              o Dlopen(...,RTLD_NOW) does not report undefined symbols.
                (Bug #428927)
    
              o rqs will sometimes write an incorrect value to the
                zero-th entry of the global-offset-table(GOT) of a C++
                shared object or executable.
    
                This resulted in segmentation fault when the executable
                or shared object containing the bad value is used. (Bug
                #366990).
    
    
    1.4 Subsystems Included in Patch SG0003458
           This patch release includes these subsystems:
    
              o patchSG0003458.compiler_eoe_sw.unix
    
              o patchSG0003458.compiler_eoe_sw64.unix
    
              o patchSG0003458.compiler_eoe_man.dso
    
              o patchSG0003458.compiler_eoe_man.unix
    
              o patchSG0003458.compiler_eoe.hdr.lib
    
              o patchSG0003458.compiler_dev.hdr.lib
    
    
    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):

    31952      2   patchSG0003458.compiler_dev_hdr
    64109     88   patchSG0003458.compiler_eoe_man
    31952      2   patchSG0003458.compiler_eoe_hdr
    04079     48 patch/README.patch.3458
    26384   3660   patchSG0003458.compiler_eoe_sw
    30950      7   patchSG0003458.idb
    44155     18   patchSG0003458
    

    INST SUBSYSTEM FILE LISTINGS

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

    patchSG0003458.compiler_dev_hdr.lib
    usr/include/auxv.h

    patchSG0003458.compiler_eoe_hdr.lib
    usr/include/auxv.h

    patchSG0003458.compiler_eoe_man.dso
    usr/share/catman/u_man/cat1/rld.z

    patchSG0003458.compiler_eoe_man.unix
    usr/share/catman/u_man/cat1/rqs.z
    usr/share/catman/u_man/cat1/rqs32.z
    usr/share/catman/u_man/cat1/rqs64.z
    usr/share/catman/u_man/cat1/rqsall.z

    patchSG0003458.compiler_eoe_sw.unix
    lib/rld
    lib32/rld
    usr/etc/rqs
    usr/etc/rqs32
    usr/etc/rqsall
    usr/etc/rqsprint
    usr/etc/rqsread
    usr/etc/rqsreadall
    usr/lib/rld.debug
    usr/lib32/rld.debug
    usr/relnotes/patchSG0003458/TC
    usr/relnotes/patchSG0003458/ch1.z

    patchSG0003458.compiler_eoe_sw64.unix
    lib64/rld
    usr/etc/rqs64
    usr/lib64/rld.debug


    DOWNLOAD PATCH
    Download Server File Name Date Added Size Download
    download.sgi.com patchSG0003458.tar 21-Dec-1998 2.7 Mb FTP HTTP Add to download cart 
    download.sgi.com patchSG0003458.tardist 21-Dec-1998 2.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: 20021117073632-IRIXPatch-1323