Patch Name:  PHSS_11392

Patch Description: s700_800 10.20 libhppa.a cumulative patch

Creation Date: 97/06/16

Post Date:  97/06/23

Hardware Platforms - OS Releases:
        s700: 10.20
        s800: 10.20

Products: N/A

Filesets:
        ProgSupport.PROG-AUX

Automatic Reboot?: No

Status: General Release

Critical: No

Path Name:  /hp-ux_patches/s700_800/10.X/PHSS_11392

Symptoms:
        PHSS_11392:
        When using libhppa.a to build a large PIC application
        (~5000 objects), the resulting large text segment exceeds
        the capacity of the +z option; ld gives this message:
        ld: Data Linkage Table (+z) overflow in file \
             /usr/lib/libhppa.a(sig.o) - use +Z option to recompile.

        PHSS_10556:
        All application developers that use libhppa on a PA8000
        *must* use the patched version if they build on 10.20.
        As released on 10.20, libhppa can result in a very specific
        error message when used on a PA8000 processor:

        Bus error (coredump)
                 or
        Conflicting changes detected in the sigcontext save_state \
        (pid xxxx).
        Pid xxxx was killed due to failure in reading the signal \
        context.
        Illegal instruction(coredump)

Defect Description:
        PHSS_11392:
        Because libhppa.a was built with the +z option, the Data
        Linkage Table overflows when libhppa.a is linked with many
        (~5000) object files.

        PHSS_10556:
        A call to allowed_unaligned_data_access() in libhppa.a
        on PA8000 systems causes a bus error when modifications
        to wide register set have been made.  Software applications
        that call allowed_unaligned_data_access() in libhppa.a
        will need to be rebuilt using the copy of libhppa.a.

SR:
        4701357772 4701350140

Patch Files:
        /usr/lib/libhppa.a

what(1) Output:
        /usr/lib/libhppa.a:
                LibHPPA Version UX.10.20.03 (+Z) - Fri 97/06/13

cksum(1) Output:
        3482742303 11076 /usr/lib/libhppa.a

Patch Conflicts: None

Patch Dependencies:  None

Hardware Dependencies:  None

Other Dependencies:  None

Supersedes:
        PHSS_10556

Equivalent Patches: None

Patch Package Size:  70 Kbytes

Installation Instructions:
        Please review all instructions and the Hewlett-Packard
        SupportLine User Guide or your Hewlett-Packard support terms
        and conditions for precautions, scope of license,
        restrictions, and, limitation of liability and warranties,
        before installing this patch.
        ------------------------------------------------------------
        1. Back up your system before installing a patch.

        2. Login as root.

        3. Copy the patch to the /tmp directory.

        4. Move to the /tmp directory and unshar the patch:

                cd /tmp
                sh PHSS_11392

        5a. For a standalone system, run swinstall to install the
            patch:

                swinstall -x autoreboot=true -x match_target=true \
                        -s /tmp/PHSS_11392.depot

        5b. For a homogeneous NFS Diskless cluster run swcluster on the
            server to install the patch on the server and the clients:

                swcluster -i -b

            This will invoke swcluster in the interactive mode and
            force all clients to be shut down.

            WARNING: All cluster clients must be shut down prior to the
                     patch installation.  Installing the patch while the
                     clients are booted is unsupported and can lead to
                     serious problems.

            The swcluster command will invoke an swinstall session in which
            you must specify:

                alternate root path  -  default is /export/shared_root/OS_700
                source depot path    -  /tmp/PHSS_11392.depot

            To complete the installation, select the patch by choosing
            "Actions -> Match What Target Has" and then "Actions -> Install"
            from the Menubar.

        5c. For a heterogeneous NFS Diskless cluster:

                - run swinstall on the server as in step 5a to install
                  the patch on the cluster server.

                - run swcluster on the server as in step 5b to install
                  the patch on the cluster clients.

        By default swinstall will archive the original software in
        /var/adm/sw/patch/PHSS_11392.  If you do not wish to retain a
        copy of the original software, you can create an empty file
        named /var/adm/sw/patch/PATCH_NOSAVE.

        Warning: If this file exists when a patch is installed, the
                 patch cannot be deinstalled.  Please be careful
                 when using this feature.

        It is recommended that you move the PHSS_11392.text file to
        /var/adm/sw/patch for future reference.

        To put this patch on a magnetic tape and install from the
        tape drive, use the command:

                dd if=/tmp/PHSS_11392.depot of=/dev/rmt/0m bs=2k

Special Installation Instructions:  None