Bug 102591 - QLogic drivers for ISP 2200/2300 are bad
Summary: QLogic drivers for ISP 2200/2300 are bad
Alias: None
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: kernel   
(Show other bugs)
Version: 3.0
Hardware: All Linux
Target Milestone: ---
Assignee: Dave Jones
QA Contact: Brian Brock
Depends On:
Blocks: 101028
TreeView+ depends on / blocked
Reported: 2003-08-18 14:19 UTC by Mark Hemment
Modified: 2015-01-04 22:02 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2004-10-11 15:23:46 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

Description Mark Hemment 2003-08-18 14:19:30 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.72 [en] (X11; U; Linux 2.2.14-5.0smp i686)

Description of problem:
  The qla2200 "addon" driver has incorrect number of handles for RIO types 1 and
  These are documented has having 15 and 30 handles respectively, but in
qla2x00.h the rio_iocb_type1_entry and rio_iocb_type2_entry structures are one
short.  This "short" limit is also present in qla2x00_handle_RIO_type2_iocb()
qla2x00_handle_RIO_type1_iocb() functions.
  When the number of handles in an RIO is at the real maximum, the qla2200
a warning, and then (in qla2x00_process_good_request()) marks the HBA as needing
a reset (due to bad handle).  Under anything but a light load, I'm getting
resets (which generate a LIP on the fabric).  I'm using direct-attached FC
JBODs, but
the issue is also present when using a switch.

  The qla2200 driver appears to be using a signature ("RESPONSE_PROCESSED")
to identify completed entries in the response ring.  This is strange.  The ISP
maintains "in" and "out" pointers for this ring.  For the ISP 2300, the "in"
appears to need "debouncing".
  Feral's ISP driver correctly uses response ring pointers, and has correct
sizes for
the RIOs.  It does not constantly reset.
  Could, either;
	a) Use feral's driver as the default for both 2200 and 2300;
	b) Fix the qla2200 addon driver

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Use the qla2200 driver, either with a 2200 or 2300
2. An "dd if=/dev/sdc of=/dev/null", where sdc is on the fabric, will show
constant resets.

Actual Results:    The "dd" will cause back-to-back resets.  Performance will

Expected Results:    No resets under normal operation.  Good performance.

Additional info:

Comment 1 Arjan van de Ven 2003-09-03 21:03:21 UTC
a fix for this has been merged

Comment 2 Bill Nottingham 2004-10-11 15:23:46 UTC
Closing MODIFIED bugs as fixed. Please reopen if the problem perists.

Note You need to log in before you can comment on or make changes to this bug.