Bug 450645

Summary: [QLogic 4.7 bug] qla2xxx- several fixes: ioctl module and slab corruption (8.02.09-d0-rhel4.7-04)
Product: Red Hat Enterprise Linux 4 Reporter: Marcus Barrow <mbarrow>
Component: kernelAssignee: Marcus Barrow <mbarrow>
Status: CLOSED ERRATA QA Contact: Martin Jenner <mjenner>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 4.7CC: andrew.vasquez, andriusb, coughlan, cward, qlogic-redhat-ext, seokmann.ju
Target Milestone: rcKeywords: OtherQA
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: RHSA-2008-0665 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-07-24 19:30:14 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:    
Bug Blocks: 240719    
Attachments:
Description Flags
85xx ioctl handling.
none
struct size fix
none
84xx fw_ready fix
none
85xx opt rom table
none
85xx chip verify
none
85xx alloc. dump
none
fix debug messages
none
84xx flash,nvram fixes
none
port speed reporting
none
slab corruption
none
update version: 8.02.09-d0-rhel4.7-04 none

Description Marcus Barrow 2008-06-10 05:41:17 UTC
A set of patches to provide various fixes for management thru the ioctl module.

They apply cleanly to kernel-2.6.9-72.EL and have been tested at the factory.

The bulk of the changes are in the ioctl module, with minor changes for FCoE
in the driver, for instance comments or identifying speed.

FCoE usage is confined to the large OEM's at the moment, who are developing products and the 
management applications support is considered critical by them.

Comment 1 Marcus Barrow 2008-06-10 10:13:00 UTC
Created attachment 308785 [details]
85xx ioctl handling.

    Correct ISP84XX IOCTL handling.
    
    - Properly handle nested data buffers in the EXT_IOCTL ReqestAdr
      or ResponseAdr.
    - Do not allocate DMA buffers for write type commands that do not
      require DSDs like change configuration.

Comment 2 Marcus Barrow 2008-06-10 10:14:01 UTC
Created attachment 308786 [details]
struct size fix

    Correct ISP84XX structure-size mismatch with API.
    
    Due to size-inconsistencies and 'union' usage used within the
    84XX API interface with EXIOCT, 84XX structures must be compiled
    with the 'packed' pragma in order to maintain member consistency.

Comment 3 Marcus Barrow 2008-06-10 10:15:35 UTC
Created attachment 308787 [details]
84xx fw_ready fix

Correct ISP84XX logic operations in qla2x00_fw_ready().

Comment 4 Marcus Barrow 2008-06-10 10:16:54 UTC
Created attachment 308788 [details]
85xx opt rom table

Add ISP84XX to the list of supported OptionRom layout IDs.

Comment 5 Marcus Barrow 2008-06-10 10:18:02 UTC
Created attachment 308789 [details]
85xx chip verify

    Correct ISP84XX verify-chip response handling.
    
    Earlier code could trigger an infinite-retry if 1st invocation
    returned a non-CS_COMPLETE status.

Comment 6 Marcus Barrow 2008-06-10 10:19:02 UTC
Created attachment 308790 [details]
85xx alloc. dump

    Use IS_QLA24XX_TYPE to allocated firmware dump space.

Comment 7 Marcus Barrow 2008-06-10 10:21:49 UTC
Created attachment 308791 [details]
fix debug messages

Fixed undefined routine names in debug messages.

Comment 8 Marcus Barrow 2008-06-10 10:22:55 UTC
Created attachment 308792 [details]
84xx flash,nvram fixes

Include ISP85xx in some ioctl paths for nvram and flash handling.

Comment 9 Marcus Barrow 2008-06-10 10:24:09 UTC
Created attachment 308793 [details]
port speed reporting

    Add support for supported-port-speed and actual-port-speed for 4G and 8G
HBAs.
    
    In the qla2x00_query_hba_port call currently the supported port
    speed is set as either 1Gb or 2Gb. This fix would set the
    supported port speed for 4G and 8G HBAs.
    
    Also modified case 4: to set port speed as 8G instead of 10G.

Comment 10 Marcus Barrow 2008-06-10 10:25:34 UTC
Created attachment 308794 [details]
slab corruption

    Correct SRB usage-after-completion/free issues resulting in SLAB
corruption.
    
    The driver is incorrectly assuming that the 'sp' reference held
    in qla2[x00|4xx]_abort_command() is valid after the mailbox
    command is issued to abort the exchange.  It is *not*, as the
    command may be completed during interrupt context before control
    is returned to the mailbox caller.	This issue was seen with the
    upstream driver, where 'Slab corruptions' were being detected by
    the SLAB debug-allocator.

Comment 11 Marcus Barrow 2008-06-10 10:28:23 UTC
Created attachment 308795 [details]
update version: 8.02.09-d0-rhel4.7-04

Comment 15 Vivek Goyal 2008-06-12 18:32:29 UTC
Committed in 73.EL . RPMS are available at http://people.redhat.com/vgoyal/rhel4/

Comment 17 Chris Ward 2008-06-16 08:42:51 UTC
~~~~~~~~~~~~~~
~ Attention: ~ Immediate attention required for this ***High Priority*** bug.
~~~~~~~~~~~~~~

A fix for this issue should be included in the latest packages contained in
**RHEL4.7-Snapshot2**, accessible now on http://partners.redhat.com.

After you (Red Hat Partner) have verified that this issue has been addressed,
submit a comment describing the results of your test in appropriate detail,    
 along with which snapshot and package version tested. The bugzilla will be
updated by Red Hat Quality Engineering for you when this information has been  
    received.

If this issue has not been properly fixed or you are unable to verify the issue
for any reason, please add a comment describing the most recent issues you are
experiencing, along with which snapshot and package version tested. If you are
sure the bug has not been fixed, change the status of the bug to ASSIGNED.

For IssueTracker users, submit verification results as usual; Bugzilla will be
updated by Red Hat Quality Engineering for you.

For additional information, contact your Partner Manager.

Thank you,
Red Hat QE Partner Management


Comment 18 Chris Ward 2008-06-16 08:58:59 UTC
This bug was not included in Snapshot 2 on partners.redhat.com, but is scheduled
to be included in a later Snapshot. Stay tuned for more information. Sorry.

Comment 19 Marcus Barrow 2008-06-17 01:53:10 UTC
All of these fixes verified present in kernel-2.6.9-73.EL



Comment 22 errata-xmlrpc 2008-07-24 19:30:14 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-2008-0665.html

Comment 23 Chris Ward 2008-07-29 07:26:59 UTC
Partners, I would like to thank you all for your participation in assuring the
quality of this RHEL 4.7 Update Release. My hat's off to you all. Thanks.