Patch Name:  PHKL_8753

Patch Description: s700 10.10 GSC SCSI tape driver cumulative patch

Creation Date: 97/01/20

Post Date:  97/02/07

Hardware Platforms - OS Releases:
        s700: 10.10

Products: N/A

Filesets:
        OS-Core.CORE-KRN ProgSupport.C-INC

Automatic Reboot?: Yes

Status: General Superseded

Critical:
        No (superseded patches were critical)
        PHKL_7378: PANIC
        PHKL_6643: PANIC
                Panic occurs only when using an unsupported device

Path Name:  /hp-ux_patches/s700/10.X/PHKL_8753

Symptoms:
        PHKL_8753:
        Fixes a bug with Exabyte tape drives that caused append
        writes (those not at BOT) to be in non-compressed mode
        when using the BEST density setting.

        PHKL_8504:
        This patch changes the behavior of the open() call with
        a write protected tape.  The open() will now fail with EIO
        if the mode is not O_RDONLY.

        PHKL_7882:
        Without immediate reporting enabled a DLT tape drive will
        take several seconds for each filemark written.  If a user
        application is writing many filemarks to a tape the
        performance will be poor.  This patch enables immediate
        reporting of filemarks, which should improve performance
        for an application that writes many filemarks to a tape.

        PHKL_7378:
        Fixes a problem with a panic caused by use of non-supported
        Exabyte tape drives.
        Adds support for Quantum DLT-2000, DLT-4000, and DLT-6000
        tape drives.

        PHKL_6643:
        The system will panic if an access is made to an Exabyte
        tape drive other than those models that are officially
        supported.

Defect Description:
        PHKL_8753:
        The Exabyte bug can be reproduced by writing a large
        (100 Mb) file to an Exabyte drive using the 'BEST' device
        file in 'no rewind' mode, then writing the same file again
        to the same device.  The first write will be substantially
        faster because it is compressed while following writes are
        not compressed.

        PHKL_8504:
        Before this patch the open() call did not look at media
        write protection.  A write() to a write protected tape
        would fail, but an open() with FWRITE mode would succeed.
        This change was made to make the GSC driver behave the same
        as the NIO driver.

        PHKL_7882:
        A flag in the driver indicates, for each device type,
        whether or not immediate reporting should be enabled for
        filemarks.  That flag was not being set for DLT drives.
        To reproduce, write a short C program that
        writes 20 blocks of 1K bytes, each separated by a filemark.
        Performance will be substantially better with this patch
        applied.

        PHKL_7378:
        System would panic with any access to a non-supported
        Exabyte tape drive.

        PHKL_6643:
        If a drive was found that had a manufacturer of Exabyte but
        was not one of the supported drives the product name got
        set to NULL.  Dereferencing this NULL pointer later on
        caused a system panic.

SR:
        1653148098 4701320580 4701320606 4701329417 4701342089
        5003329078

Patch Files:
        /usr/conf/h/mtio.h
        /usr/conf/lib/libhp-ux.a(scsi_tape.o)
        /usr/include/sys/mtio.h

what(1) Output:
        /usr/conf/h/mtio.h:
                mtio.h $Date: 97/01/20 10:07:51 $ $Revision: 1.23.89
                        .13 $ PATCH_10.10 (PHKL_8753)
        /usr/conf/lib/libhp-ux.a(scsi_tape.o):
                scsi_tape.c $Date: 96/12/20 15:17:36 $ $Revision: 1.
                        3.89.17 $ PATCH_10.10 (PHKL_8753)
        /usr/include/sys/mtio.h:
                mtio.h $Date: 97/01/20 10:07:51 $ $Revision: 1.23.89
                        .13 $ PATCH_10.10 (PHKL_8753)

cksum(1) Output:
        1968850153 25660 /usr/conf/h/mtio.h
        462229135 59756 /usr/conf/lib/libhp-ux.a(scsi_tape.o)
        1968850153 25660 /usr/include/sys/mtio.h

Patch Conflicts: None

Patch Dependencies:  None

Hardware Dependencies:  None

Other Dependencies:  None

Supersedes:
        PHKL_6643 PHKL_7378 PHKL_7882 PHKL_8504

Equivalent Patches:
        PHKL_8754:
        s800: 10.10

        PHKL_8755:
        s700: 10.20

        PHKL_8756:
        s800: 10.20

Patch Package Size:  170 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 PHKL_8753

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

                swinstall -x autoreboot=true -x match_target=true \
                        -s /tmp/PHKL_8753.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/PHKL_8753.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/PHKL_8753.  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 PHKL_8753.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/PHKL_8753.depot of=/dev/rmt/0m bs=2k

Special Installation Instructions:  None