Bug 567428

Summary: [QLogic 5.6 FEAT] Update qla2xxx driver to version 8.03.01.05.05.06-k
Product: Red Hat Enterprise Linux 5 Reporter: Andrew Vasquez <andrew.vasquez>
Component: kernelAssignee: Chad Dupuis (Cavium) <cdupuis>
Status: CLOSED ERRATA QA Contact: Red Hat Kernel QE team <kernel-qe>
Severity: high Docs Contact:
Priority: urgent    
Version: 5.6CC: andriusb, bugproxy, bzeranski, cdupuis, cward, dhoward, jjarvis, jpirko, karen.skweres, lalit.chandivade, ltroan, martinez, martin.wilck, mbarrow, nobody+PNT0273897, qlogic-redhat-ext, revers, sandy.garza, sbest, syeghiay
Target Milestone: rcKeywords: FutureFeature, OtherQA, ZStream
Target Release: 5.6   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Kernel panic occurred on a Red Hat Enterprise Linux 5.5 FC host with a QLogic 8G FC adapter (QLE2562) while running IO with target controller faults. With this update, kernel panic no longer occurs in the aforementioned case.
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-01-13 21:07:55 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 578444    
Bug Blocks: 531800, 536863, 547220, 557597, 568826, 580439, 580446, 580580, 600363, 626562, 627216, 643135    
Attachments:
Description Flags
First batch of updates from upstream
none
Update FW version for 4G & 8G HBAs to 5.03.02
none
qla2xxx: Add FCP cmd priority, ISP81XX internal loopback and flash related fixes.
none
Add ISP82XX support.
none
qla2xxx: Add FCP cmd priority, ISP81XX internal loopback and flash related fixes.
none
Add ISP82XX support.
none
qla2xxx: Add ISP 82xx support
none
Second batch of fixes from upstream
none
Reworked ISP82XX Support. none

Description Andrew Vasquez 2010-02-22 23:14:01 UTC
Resync with upstream driver.

Comment 1 Andrius Benokraitis 2010-03-01 16:35:35 UTC
*** Bug 563221 has been marked as a duplicate of this bug. ***

Comment 2 Andrius Benokraitis 2010-03-01 21:34:30 UTC
*** Bug 569526 has been marked as a duplicate of this bug. ***

Comment 3 Andrius Benokraitis 2010-03-09 16:14:17 UTC
*** Bug 516819 has been marked as a duplicate of this bug. ***

Comment 4 Andrius Benokraitis 2010-03-09 19:23:17 UTC
*** Bug 571259 has been marked as a duplicate of this bug. ***

Comment 5 Andrius Benokraitis 2010-03-11 05:57:22 UTC
*** Bug 571261 has been marked as a duplicate of this bug. ***

Comment 6 Lalit Chandivade 2010-03-31 10:54:38 UTC
Created attachment 403700 [details]
First batch of updates from upstream

Honour "Extended BB credits" bit for CNAs.

Fix warning messages in qla2x00_request_irqs
        The fall-back is from MSI-X to MSI to INTa

Added support for notifying user space of a fw dump

Correct EH bus-reset handling.
        Target-level resets are unlikely to complete if done after the
        bus (LIP/OLS/NOS) has been reset.  Perform target-level resets,
        if necessary, prior to hitting the bus.

Correct use-after-free issue in terminate_rport_io callback.
        The explicit logout (LOGO) issued at the end of the callback will
        flush (via normal scsi_cmnd->done()) any outstanding commands
        (FCP2) the firmware is holding.  While iterating through the
        outstanding_cmnd array in qla2x00_abort_fcport_cmds(), locking
        and unlocking of the hardware spinlock, opens-up the driver to
        cases where the processed SRB (sp) could be used after the
        command completed from interrupt context.

Add firmware ETS burst support.
        Can be used to balance NIC/FCoE traffic distribution

Added parameter to load FW from flash for 4G/8G.

Remove unused dpc flags and unused operation based on the flags.

The RSCN processing is skipped if the event received is global and vha is not recipient.

Prevent sending mbx commands from sysfs during isp reset.
        The fix prevents application path from sending get-firmware-state mbx command
        during an isp reset

Comment 7 Rob Evers 2010-03-31 13:07:30 UTC
Hi Lalit,

Thanks for the update.  You can continue to add patches that apply on top of this patch until this bug moves into the 'POST" state at which point a new bugzilla will be required for further updates.

Rob

Comment 8 Lalit Chandivade 2010-03-31 17:40:43 UTC
(In reply to comment #7)
Hi Rob,

In this case I would post patches to this BZ and close the other BZs that I opened for more updates.

Thanks
Lalit.

Comment 9 Lalit Chandivade 2010-03-31 17:42:33 UTC
*** Bug 578444 has been marked as a duplicate of this bug. ***

Comment 10 Lalit Chandivade 2010-03-31 17:44:55 UTC
Created attachment 403796 [details]
Update FW version for 4G & 8G HBAs to 5.03.02

Comment 11 Lalit Chandivade 2010-03-31 17:46:34 UTC
*** Bug 578449 has been marked as a duplicate of this bug. ***

Comment 12 Lalit Chandivade 2010-03-31 17:47:48 UTC
Created attachment 403797 [details]
qla2xxx: Add FCP cmd priority, ISP81XX internal loopback and flash related fixes.

Allows for per-command priority setting for FCP_CMNDs (Posted on linux-scsi)

Ensure flash operation and host reset via sg_reset are mutually exclusive (To
be posted on upstream)
        The problem occurring is a hw-race where there's an outstanding
read-flash operation
        occurring while the chip is being reset (done via an sg_reset script).
        After the chip is paused, the read-flash operation never completes and
the
        DPC thread, while trying to complete the reset, is never able to
recover,
        as the HW appears to be hung...

        The fix is to wait for outstanding flash operation prior to doing a
sg_reset -h.
        And to wait for reset to complete before any flash operations.

Add internal loopback support for ISP 81XX, this is for application support (To
be posted upstream)

Comment 13 Lalit Chandivade 2010-04-04 06:36:35 UTC
Comment on attachment 403796 [details]
Update FW version for 4G & 8G HBAs to 5.03.02

For FW updates separate BZ is open
https://bugzilla.redhat.com/show_bug.cgi?id=578444

Comment 14 Lalit Chandivade 2010-04-04 07:36:00 UTC
Created attachment 404373 [details]
Add ISP82XX support.

Comment 15 Rob Evers 2010-04-19 17:32:24 UTC
Lalit,

Are all new features included here slated for rhel6 as well?  We want to avoid feature regression when updates from rhel5.6 to rhel6.0 occur.

Rob

Comment 17 Lalit Chandivade 2010-05-05 08:48:39 UTC
Created attachment 411512 [details]
qla2xxx: Add FCP cmd priority, ISP81XX internal loopback and flash related fixes.

Updated 81XX internal loopback
Added:
Cleanup FCP-command-status processing debug statements. (Will be posted upstream)
Optionally disable target reset (Will be posted upstream)

Comment 18 Lalit Chandivade 2010-05-05 08:49:34 UTC
Created attachment 411514 [details]
Add ISP82XX support.

Updated 82XX support patch.

Comment 19 IBM Bug Proxy 2010-05-05 10:51:43 UTC
------- Comment From mknutson.com 2010-05-05 06:46 EDT-------
Qlogic, If needed can you please verify these fixes also made it into the RHEL6.0 driver? Thanks.

Comment 20 Lalit Chandivade 2010-05-06 04:38:44 UTC
Except ISP82XX support we will submit the bug fixes to go into RHEL 6.0.
The fixes are already posted to upstream kernel on linux-scsi.

Comment 21 Lalit Chandivade 2010-06-02 13:35:27 UTC
Created attachment 419035 [details]
qla2xxx: Add ISP 82xx support

This patch is same as the ealier one except this patch adds the qla_nx.c and qla_nx.h file in correct place (driver/scsi/qla2xxx). earlier patch was adding these files in current directory.

Comment 22 Lalit Chandivade 2010-06-02 14:16:59 UTC
Created attachment 419047 [details]
Second batch of fixes from upstream

Following fixes added
Check for empty slot in request queue before posting Command type 6 request.
        For ISP82xx, the check for empty slot in request queue before posting command type 6
        request was missing. This could lead to request queue entry corruptions causing
        IO timeouts.

Remove duplicate macro QLA82XX_CRB_DEV_PART_INFO

Do not enable VP in non fabric topology.
        After topology change ISP is reset and VPs are re-enabled.
        If the topology is not fabric, VPs could falsely get enabled.

Handle outstanding mbx cmds on hung f/w scenarios.

Fix flash write failure on ISP82XX
        Driver was not unprotecting correctly, use correct bits
        to unprotect the flash on ISP 82xx.

Log proper messages on loop down and port update AEN (This is RHEL 5.x specific)
        Currently due to usage of same function qla2x00_set_loop_down for
        loop down and port update AEN same message was logged into messages file.
        Moved the debug statements out of the common function to log proper
        message for loop down and port update AEN.

Comment 23 Chad Dupuis (Cavium) 2010-06-18 19:29:34 UTC
Lalit,

Has your last patch set been submitted upstream yet?

Comment 24 Lalit Chandivade 2010-06-19 03:05:36 UTC
Chad,

This one "Check for empty slot in request queue before posting Command type 6 request" is in pipeline for upstream subission.

Rest are already posted on upstream.

Lalit.

Comment 25 Jarod Wilson 2010-06-28 15:11:23 UTC
Not sure if this code update is explicitly dependent on the firmware update or not, but I'm marking it as such for patch tracking purposes, as the firmware update under bug 578444 was posted as part of a series with the patches for this bug.

Comment 26 Chad Dupuis (Cavium) 2010-06-28 15:55:50 UTC
From a technical standpoint, the firmware patch is not dependent on the patches in this bz.

Comment 27 Chad Dupuis (Cavium) 2010-07-20 14:41:52 UTC
Created attachment 433187 [details]
Reworked ISP82XX Support.

This patch was reworked to look more resemble the upstream code.  However, there will be some differences because there is some functionality that won't be backported to RHEL 5:

- Multiple queue support
- CPU affinity dedication
- Asynchronous logins

Comment 32 Jarod Wilson 2010-08-02 21:48:31 UTC
in kernel-2.6.18-210.el5
You can download this test kernel from http://people.redhat.com/jwilson/el5

Detailed testing feedback is always welcomed.

Comment 35 Larry Troan 2010-09-02 13:08:35 UTC
Can we get test feedback from our partners requesting this feature per comment #32 please: http://people.redhat.com/jwilson/el5  

(Not setting specific NEEDINFO because this feature has been requested by several partners and not sure who to ask.)

Comment 38 Martin Prpič 2010-11-11 14:03:55 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Kernel panic occurred on a Red Hat Enterprise Linux 5.5 FC host with a QLogic 8G FC adapter (QLE2562) while running IO with target controller faults. With this update, kernel panic no longer occurs in the aforementioned case.

Comment 39 John Jarvis 2010-11-18 21:06:14 UTC
This enhancement request was evaluated by the full Red Hat Enterprise Linux 
team for inclusion in a Red Hat Enterprise Linux minor release.   As a 
result of this evaluation, Red Hat has tentatively approved inclusion of 
this feature in the next Red Hat Enterprise Linux Update minor release.   
While it is a goal to include this enhancement in the next minor release 
of Red Hat Enterprise Linux, the enhancement is not yet committed for 
inclusion in the next minor release pending the next phase of actual 
code integration and successful Red Hat and partner testing.

Comment 40 IBM Bug Proxy 2010-11-20 12:46:35 UTC
------- Comment From jmtt.com 2010-11-19 21:27 EDT-------
Max ran a 48-hour pounder run on elm3b55, a x3550m2 destiny, to exercise the qla2xxxx driver.  No problems were seen.

Comment 41 Chad Dupuis (Cavium) 2010-12-02 20:12:58 UTC
No issues seen.  Verified by QLogic.

Comment 43 errata-xmlrpc 2011-01-13 21:07:55 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2011-0017.html