Patch-ID# 111097-26

NOTE:
***********************************************************************
READ THE TERMS OF THE AGREEMENT ("AGREEMENT") IN THE LEGAL_LICENSE.TXT
FILE CAREFULLY BEFORE USING THIS SOFTWARE. BY USING THE SOFTWARE, YOU
AGREE TO THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE
TERMS, PROMPTLY DESTROY THE UNUSED SOFTWARE.
***********************************************************************

Keywords: qlc isp2200 buffer pci fibrechannel fcode cpr pm
Synopsis: SAN 4.4.x: qlc driver patch
Date: Jul/23/2007


Install Requirements: See Special Install Instructions                      
                      Reboot after installation, an alternative may be in Special Install Instructions                      
                      
Solaris Release: 8

SunOS Release: 5.8

Unbundled Product: SAN

Unbundled Release: 4.4.x

Xref: 

Topic: SAN 4.4.x: qlc driver patch
        NOTE:   Refer to Special Install Instructions section for
                IMPORTANT specific information on this patch.

Relevant Architectures: sparc

BugId's fixed with this patch: 4384649 4397075 4397830 4399090 4405235 4412354 4412532 4413629 4415081 4419300 4424628 4434939 4438431 4438556 4438711 4442639 4447152 4448737 4456545 4457384 4459282 4460668 4461225 4465251 4469140 4472480 4474802 4479175 4479875 4482147 4485632 4489852 4492313 4495718 4504825 4509254 4509258 4516974 4522113 4522662 4523975 4533643 4621477 4624813 4624871 4626053 4627468 4629571 4631634 4636301 4642666 4644297 4647659 4647782 4648558 4652400 4655224 4659750 4660463 4661572 4662966 4665443 4665873 4666861 4667228 4667915 4668452 4668524 4670197 4677996 4681860 4689013 4689037 4690043 4709898 4716634 4722971 4723706 4723754 4724994 4730215 4738976 4739888 4741426 4743540 4745439 4746660 4749906 4754226 4756241 4768672 4794554 4796454 4811430 4812784 4812979 4827269 4830148 4831083 4849510 4853357 4858582 4859926 4868352 4881110 4884279 4890629 4905185 4925218 4994034 5004301 5012482 5090186 5091773 5096982 6220173 6270092 6274036 6281203 6305710 6329995 6330800 6331949 6337290 6344143 6345310 6350809 6354920 6356559 6371273 6373288 6374654 6379312 6379866 6380370 6387150 6388297 6390139 6390862 6394475 6402322 6410934 6411995 6429517 6439492 6439910 6451795 6452141 6468823 6491276 6495756 6520427

Changes incorporated in this version: 4647659 6305710 6388297 6468823 6491276 6495756 6520427

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 108984-09

Patches required with this patch: 108984-08 111096-11 (or greater)

Obsoleted by: 

Files included with this patch: 

/etc/driver_aliases
/etc/driver_classes
/etc/name_to_major
/kernel/drv/qlc
/kernel/drv/qlc.conf
/kernel/drv/sparcv9/qlc
/usr/include/sys/fibre-channel/fca/qlc.h
/usr/lib/adb/qlc_adapter_stat
/usr/lib/adb/qlc_atio
/usr/lib/adb/qlc_cmd_a32
/usr/lib/adb/qlc_cmd_a64
/usr/lib/adb/qlc_ctio
/usr/lib/adb/qlc_dev
/usr/lib/adb/qlc_device_stat
/usr/lib/adb/qlc_enable_lun
/usr/lib/adb/qlc_head
/usr/lib/adb/qlc_icb
/usr/lib/adb/qlc_imm_notify
/usr/lib/adb/qlc_ip_a32
/usr/lib/adb/qlc_ip_a64
/usr/lib/adb/qlc_ip_icb
/usr/lib/adb/qlc_ip_rcv
/usr/lib/adb/qlc_ip_rcv_cont
/usr/lib/adb/qlc_link
/usr/lib/adb/qlc_mark
/usr/lib/adb/qlc_notify_ack
/usr/lib/adb/qlc_nvram
/usr/lib/adb/qlc_port_db
/usr/lib/adb/qlc_srb
/usr/lib/adb/qlc_state
/usr/lib/adb/qlc_tgt_cmd
/usr/lib/adb/sparcv9/qlc_adapter_stat
/usr/lib/adb/sparcv9/qlc_atio
/usr/lib/adb/sparcv9/qlc_cmd_a32
/usr/lib/adb/sparcv9/qlc_cmd_a64
/usr/lib/adb/sparcv9/qlc_ctio
/usr/lib/adb/sparcv9/qlc_dev
/usr/lib/adb/sparcv9/qlc_device_stat
/usr/lib/adb/sparcv9/qlc_enable_lun
/usr/lib/adb/sparcv9/qlc_head
/usr/lib/adb/sparcv9/qlc_icb
/usr/lib/adb/sparcv9/qlc_imm_notify
/usr/lib/adb/sparcv9/qlc_ip_a32
/usr/lib/adb/sparcv9/qlc_ip_a64
/usr/lib/adb/sparcv9/qlc_ip_icb
/usr/lib/adb/sparcv9/qlc_ip_rcv
/usr/lib/adb/sparcv9/qlc_ip_rcv_cont
/usr/lib/adb/sparcv9/qlc_link
/usr/lib/adb/sparcv9/qlc_mark
/usr/lib/adb/sparcv9/qlc_notify_ack
/usr/lib/adb/sparcv9/qlc_nvram
/usr/lib/adb/sparcv9/qlc_port_db
/usr/lib/adb/sparcv9/qlc_srb
/usr/lib/adb/sparcv9/qlc_state
/usr/lib/adb/sparcv9/qlc_tgt_cmd

Problem Description:

4647659 need better wwn reporting
6305710 serial number for Qlogic HBA is not being reported in ESM AA
6388297 SCSI access lost following 6130/6920 lun addition via McData switch
6468823 luxadm does not find Qlogic ISP2312 on certain machines, works fine 
	on others
6491276 pull cable from HBA side(TX side),doesn't trigger qlc interrupt 
	and 'loop offline'
6495756 install miniroot spams console with NOTICE: qlc(1): FL switch topology 
	is not supported
6520427 QLogic HBA package needs qlc.conf file change to pci-max-read-request
 
(from 111097-25)
 
6451795 Multiple nodes quit responding to pings on fcip network when a cable 
	is pulled for only one node
 
(from 111097-24)
 
6220173 fcinfo not reporting correct link status / statistics
6330800 Link statistics are not reported on QLogic 1Gb/s & 2Gb/s HBAs
6356559 Minor nit regarding Qlc driver WARNINGs during attach
6371273 LUN numbers greater than 256 are treated differently by 2G and 4G 
	Qlogic HBAs
6374654 Titan: qlc1 => SunVTS6.1: VTSID 6015 qlctest.loopback.FATAL qlc: 
	"Ten Bit loopback data miscompare.
6387150 qlogic fca driver should keep FCode version in fp_hba_port_attrs.option
	rom_version
6390862 qlc panic in ql_task_thread+0x660
6394475 stack overflow caused by qlc's use of MAXPATHLEN
6402322 Unable to run qlctest on both ports of a dual-port QLogic HBA 
	simultaneously
6410934 cfgadm -c unconfigure of FC EM panics the system
6411995 qlc should use new interrupt interface only.
6429517 Integrate new firmware in qlc driver
6439492 Link statistics are not reported on QLogic 4GB HBA's
6439910 i.qlc class action does not delete comments removed from qlc.conf
6452141 qlc.conf missing mpxio-disable comment
 
(from 111097-23)
 
6373288 qlc driver shouldn't overwrite BIOS/FCODE initialized value in 
	'max_read_request_size'
6379312 SAN4.4.8 Unable to perform IP traffic on Crystal+ 1Gb FCIP configured 
	HBA ports
6379866 "panic:recursive mutex_enter", then "panic:panic sync timeout" after 
	cfgadm unconfigure N0.SB0::mem
6390139 qlc driver deadlocks when an ioctl issued and there is outstanding IO.
 
(from 111097-22)
 
6329995 qlctest is causing the machine to loose access to the boot disk on 
	2200's boards
6331949 qlctest internal loopback test failing
6337290 qlc_delay() can not wait for less than 10 msec
6344143 qlctest: Fails on Online Selftest
6345310 memory leaks seen with qlc driver
6350809 Crystal-2a (SG-PCI2FC-QF2) report incorrect WWN when NVRAM data has 
	CHECKSUM error
6354920 Qlogic needs to provide adb macros for S8 and S9
6380370 Class action script i.qlc need to be modified to take care of 
	qlc.conf changes
 
(from 111097-21)
 
6270092 qlc driver support for 4G Qlogic HBAs
 
(from 111097-20)
 
6274036 qlc f/w might cause data corruption
 
(from 111097-19)
 
5004301 FCIP performance using Qlogic card is not acceptable
5091773 system lost lots of disks connected to crystal2A after DRing
6281203 Intermittent boot panics to encapsulated root disk in V880
 
(from 111097-18)
 
5096982 qlc causes incorrect timeout on USCSI commands to multiple LUNs on 
	an FC target
 
(from 111097-17)
 
5012482 luxadm rdls can induce 1 second i/o pauses.
 
(from 111097-16)
 
5090186 Change preinstall scripts for SAN patches
 
(from 111097-15)
 
4890629 Add new IOCTLs to improve FC-HBA standards compliance
4994034 qlc.c fails to check FCP_RESID_UNDER or FCP_RESID_OVER before using 
	FCP_RESID
 
(from 111097-14)
 
4905185 Data corruption/loss on HP LTO-2 drives via FC420 bridge
4925218 dr operation fails with qlc driver due to ha->busy > 0
 
(from 111097-13)
 
4648558 Solaris 9 qlc_task_daemon burns too much CPU on 15K
4647782 qlc: pass port speed in port state
4722971 fcp, qlc: add support for lun reset.
4768672 qlc+fcp: leadville should validate the corrupted residual length.
4811430 Inband communcation incompatibilities between SAN Foundation software 
	and SE3510
4812784 link goes up and down continuously with JNI HBAs in private loop.
4827269 FCP-2 Error Recovery is not functional on 1Gb HBA's using 
	Fabric topology
4830148 Qlogic 2300 fw, can't handle multiple Target Resets - IOs can fail.
4831083 HBA goes offline
4849510 Remove SFK internal build numbers from drivers modulde name
4853357 QLC denies valid CT pass thru requests which switch supports
4858582 channel 0 offline after failure and recovery of primary controller
4859926 N_Port ID not specified in RLS ELS
4868352 qlc: enhance FCP-2 recovery to include host side cable pulls
4881110 cfgadm -c unconfigure failed due to qlc detach failure
4884279 bad pointer assignment in qlc leads to panic in kstat
 
(from 111097-12)
 
4644297 Add support for RNID ELS
4677996 "NOTICE: qlc(3): 23xx card detected" is displayed during system boots up
4716634 when fcp is unloaded, ssfcp_watch() may continue to be invoked to 
	spite the user
4738976 fcp: Leadville should not enumerate devices with nonzero peripheral 
	qualifier
4739888 Handle maximum rsp buffer size as defined in FC-FS for the 
	fc_rnid_acc_t struct
4741426 fcip channel is unusable - unable to ping using fcip
4743540 6.1 Qpatches broke qlctest mailbox test
4745439 NWWN gets corrupted
4749906 HBA continually goes offline/online
4754226 PLOGI to fffffc failed state=Packet Transport error, 
	reason=No Connection
4756241 qlc: Received firmware system error (8002)
4794554 Panic seen on system when HBA_SENDRNIDV2 is sent
4796454 sunregtest hangs
4812979 ESM 1.2: Host panic Kernel heap
 
(from 111097-11)
 
4460668 Leadville does not support untagged devices correctly
4516974 sync gives up on devices connected through qlc
4626053 qlc: qlc driver shouldn't retry the pkts with logged out status.
4642666 qlc: invalid ASSERT in qlc_un_init_pkt()
4652400 cfgadm displayed failing condition for ports that have I/O going through
4662966 PANIC in module "qlc" while suspending drivers on copy-rename
4665873 qlc causes misdirected IOs after reset or link transition.
4667228 SanBox2 firmware takes too long to generate FLOGI ACC and provide R_RDY
4668524 Tape test failed with drive not online.
4681860 Qlctest incorrectly fails on 2300 hba connected to 2 gb qlogic switch
4689013 FCP-2 Error Recovery not functional across Link Reset (Fabric)
4689037 SANbox2/99x0/Leadville6.0.2: DEX failed with SCSI transport 
	failed: reason 'tran
4709898 qlc fw: task mgmt operations complete before completion of actual xchg
4723706 Tape tests fail upon LIP or link reset
4723754 qlc: tran error folllowing a link reset.
4724994 qlc: System error seen while testing 9840B Tape drives with leadville
4730215 qlc: panic in qlc adisc code path
4746660 qlc: allow loading the entire 512k flash chip for Ivory
 
(from 111097-10)
 
4690043 qlc: provide workaround for t3 returning good status but no data xfer
 
(from 111097-09)
 
4624813 qlc: Add support for 2300 series of ctrls
4631634 qlc:2300 multiple tran_err causing IOs to give up
4659750 qlc: panic in qlc_status_entry
4660463 qlc: add support for 2312 series of controllers
4661572 Data curruption occured with 2200 and 2300 HBA
4665443 qlc firmware: 2300 underrun behavior is different from 2200
4666861 Latest fp code breaks qlctest mailbox command
4667915 qlc firmware not sending loop down event
4668452 2Gb firmware reports Exchange Busy
4670197 qlc firmware: data corruption seen on 2200
 
(from 111097-08)
 
4624871 LIP followed by command retry w/3 Photons with qlc HBA's
4627468 qlc: disable hw interrupts after suspend for starcat and serengeti
4629571 PLOGI fails when no LUN on SE 99x0 are presented to a host
4533643 FCP_DL field missing from FCP_CMD frame
4636301 qlc: 2200 with SanBox2 causes data corruption during I/O+cfgadm
4655224 panccpu0]thread=30066d0: pisy-0: PC bus2errors)! at Leadville5d
 
(from 111097-07)
 
4621477 "login fabric port failed D_ID=104400, error=5, reason=4" displayed on console
 
(from 111097-06)
 
4442639 Qlogic 2200 series HBA's need to support ECHO ELS command
4472480 (Brocade) Unable to configure the T3 devices connected to the 
	fabric zone on Bro
4485632 packaging of MPXIO driver.conf files can be improved
4482147 fp: PWWN=500060e802791812 logged out 15 times; Giving up
4492313 fp(0): N_x Port with D_ID=1004cb, PWWN=500060e802791812 disappeared 
	from fabric
4495718 Qlogic HBA violate FC Spec in regards to EOFni/EOFa/EOFdti
4504825 qlc: 17 sec delay when host cable plug-out and plug-in (fabric)
4509254 qlc: command timeout should be started only when the command is posted 
	to fw
4509258 qlc: need messages to dump the discovery process
4522113 qlc: allow streaming transfers for the Ivory card
4522662 with echo fw support excalibre/daktari does not boot.
4523975 Vicom login fabric port failed
 
(from 111097-05)
 
4489852 qlc: SBUS 220x hba encounters read errors with fc-tape drive 
	running "ntrw"
 
(from 111097-04)
 
4457384 Holding proc_t->p_lock while allocating memory leads to hung 
	clock() & heartbeat
4459282 memory leak in qlc_configure_device_d_id()
4461225 "login fabric port failed D_ID=1a4d00, error=5, reason=4 " 
	displayed on console
4465251 If a port is offlined with mpxio enabled the I/O does not failover
4479175 qlc(0): login fabric port failed D_ID=100ac7, error=5, reason=3
4479875 qlc: Add Ivory related code changes
 
(from 111097-03)
 
4405235 qlc: recursive mutex panic in qlc_intr/qlc_isr
4415081 qlc: reports PKT_SUCCESS with garbage Name server response
4419300 Intermittent QLC device driver failure when disconnecting an IO board
4424628 scsi "timeout" and "giving up" on Diamond and Crystal+ cards
4434939 System w/ Onboad ISP2200 controllers have WWN wrong.
4438431 qlc: Large initiator support problems
4438556 FC: Avoid confusion through better versioning
4438711 T3B/Crystal+/Hub: 1 Crystal+ port failed detecting LUNs w/ FCcable 
	hotplug test
4447152 panic in qlc driver
4448737 Duplicate data blocks on tape.
4456545 qlc sometimes stays offline and devices do not show up after boot
4469140 temporarily set default qlc_enable_pm to 0 (off)
4474802 qlc Firmware: fabric related fw fixes
 
(from 111097-02)
 
        This patch revision was generated due to complications with 
        111097-01.
 
(from 111097-01)
 
4397075 qlc: PLOGI should not be done for FC-Tape during lip recovery
4397830 ASSERT failure in qlc while running dr tests
4399090 40.6 drivers: SCSI inquiry fails for T3
4412354 fcip, qlc, fp : Enable fabric mode support for IP over FC
4412532 qlc: Send lip through sansurfer causes TL_port purple luns going offline
4413629 qlc: LINIT failing with mailbox command error
4384649 crystal card exhibits poor I/O bandwidth performance

Patch Installation Instructions:
--------------------------------
 
For Solaris 2.0-2.6 releases, refer to the Install.info file and/or
the README within the patch for instructions on using the generic
'installpatch' and 'backoutpatch' scripts provided with each patch.
 
For Solaris 7-9 releases, refer to the man pages for instructions
on using 'patchadd' and 'patchrm' scripts provided with Solaris.
Any other special or non-generic installation instructions should be
described below as special instructions.  The following example
installs a patch to a standalone machine:
 
       example# patchadd /var/spool/patch/104945-02
 
The following example removes a patch from a standalone system:
 
       example# patchrm 104945-02
 
For additional examples please see the appropriate man pages.

Special Install Instructions:
----------------------------- 
NOTE 1:	Minimum requirement : Solaris 8 Update 4
 
NOTE 2:	Due to versioning introduced in the drivers, the latest revision
  	of the following patches *MUST* also be installed prior to rebooting
   	the system. Failure to install *ALL* the required patches will
   	cause the drivers to not load.
 
	111095-16 (or newer)	fctl/fp/fcp/usoc driver patch
	111096-09 (or newer)	fcip driver and adb macros patch
	111412-15 (or newer)	mpxio driver patch
 
NOTE 3: This patch requires the package SUNWsan (San Foundation Kit).
 
        The SUNWsan package is available via the Sun Download Center 
        at http://www.sun.com/storage/san/
 
NOTE 4: Reboot the system after installing all the patches.
 
!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
This patch, 111097, is not compatible with jfca driver patches 
earlier than 114877-08. 
 
It is strongly recommended that all systems with patch
114877-07 (or earlier) be upgraded to 114877-08 (or later).
 
!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

README -- Last modified date:  Monday, July 23, 2007

