Patch-ID# 100280-02   
Keywords: scsi tape dump syncronization lost psig signal 14
Synopsis: SunOS 4.1.1: st jumbo patch for 4.1.1
Date: 24/Jul/91

SunOS RELEASE: 4.1.1

Topic: scsi tape driver jumbo patch

BugID's fixed with this patch: 1032534, 1038050, 1048864, 1051244, 1052659, 1052888.

Architectures for which this patch is available: sun3, sun3x, sun4

Patches which may conflict with this patch: 100211, 100250, 100262

Obsolete By: 

Problem Description:

Bug ID 1038050 - 

	When tape commands are interrupted the tape is supposed
	rewind and resynchronize, however the commands get out
	of sync and the drive does not respond to any further
	commands.

Bug ID 1052888 -

	When a scsi tape device is interrupted or encounters some other
	unexpected error, it can panic with a "zero divide trap".  
	It is known to occur most often with Exabyte tape drives.  
	This panic condition has been fixed by checking for a possible
	zero divide.

Bug ID 1052659 -

   	The MTFSR/MTBSR ioctl are failing on the tape drive.
   	It takes a long time to complete, and there is no
   	error returned.  The tape position appears to be lost.

Bug ID 1048864 -

	Tape accesses to a non-Sun 1/2" front load tape drive interrupted
	with "Interrupted system call" errors on subsequent tape accesses
	until the system is rebooted.

Bug ID 1051244 -

	SCSI tape drive is misusing signals.  This could result in
	a panic: psig action.

BUGID: 1032534

	After applying patch id 100268-02, remote 'dump'
	to scsi tape no longer 'panics', but now justs fails.
	Remote 'dump' to scsi tape fails with the 
	following messages:

	  st1:  tape synchronization lost
	  psig: "rmt" signal 14 was masked, put back

	And, 'dump' will return the error message:
	  
	  "Bad return code from dump: 4"

The fix includes patched version of:

        st.o
        streg.h  
        scsi.h

INSTALL:
As root:
# mv /sys/sun{3,3x,4}/OBJ/st.o /sys/sun{3,3x,4}/OBJ/st.o.orig
# cp sun{3,3x,4}/st.o /sys/sun{3,3x,4}/OBJ/st.o
# chmod 444 /sys/sun4/OBJ/st.o
# mv /sys/sundev/streg.h /sys/sundev/streg.h.orig
# mv /sys/sundev/scsi.h /sys/sundev/scsi.h.orig 
# cp sun{3,3x,4}/streg.h /sys/sundev
# cp sun{3,3x,4}/scsi.h /sys/sundev

rerun /etc/config <kernel-name>
and make and install the new kernel.
Please refer to the system and networking administration manual
for details on building and installing a new kernel


