Bug 511096 - bnx2i and libiscsi: make sure cnic dev is registered and fix libiscsi eh_abort locking
Summary: bnx2i and libiscsi: make sure cnic dev is registered and fix libiscsi eh_abor...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel
Version: 5.4
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: 5.4
Assignee: Mike Christie
QA Contact: Red Hat Kernel QE team
URL:
Whiteboard:
Depends On: 441979 504181
Blocks: 458757 513802
TreeView+ depends on / blocked
 
Reported: 2009-07-13 16:14 UTC by Mike Christie
Modified: 2009-09-03 14:00 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 513802 (view as bug list)
Environment:
Last Closed: 2009-09-02 08:31:26 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
fix bnx2i host setup and eh abort locking (3.47 KB, patch)
2009-07-21 17:55 UTC, Mike Christie
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2009:1243 0 normal SHIPPED_LIVE Important: Red Hat Enterprise Linux 5.4 kernel security and bug fix update 2009-09-01 08:53:34 UTC

Description Mike Christie 2009-07-13 16:14:12 UTC
Description of problem:


1. make sure cnic dev is registered:

When using iface, bnx2i was unable to offload further connections after
      all active sessions are logged out. bnx2i will unregister the device from
      cnic when the last connection is torn down. Next call to ep_connect()
      will fail because the device is not registered. This issue is not seen
      if shost == NULL is passed to ep_connect() call because in that case bnx2i
      will registers all known devices with cnic before doing a route look-up.
      When shost != NULL, bnx2i knows the device on which to offload the
      connection and has to register this device before attempting to offload
      the connection


2. fix libiscsi eh abort locking

iscsi_eh_abort needs to grab the session lock and disable bhs, because the session lock can be taken from a timer or softirq.




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


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 RHEL Program Management 2009-07-13 16:23:37 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.

Comment 6 Mike Christie 2009-07-21 17:55:02 UTC
Created attachment 354542 [details]
fix bnx2i host setup and eh abort locking

fix bnx2i host setup and eh abort locking

Comment 7 Don Zickus 2009-07-21 19:37:22 UTC
in kernel-2.6.18-159.el5
You can download this test kernel from http://people.redhat.com/dzickus/el5

Please do NOT transition this bugzilla state to VERIFIED until our QE team
has sent specific instructions indicating when to do so.  However feel free
to provide a comment indicating that this fix has been verified.

Comment 9 Alex He 2009-07-31 07:52:49 UTC
I confirmed the patch :
        linux-2.6-scsi-bnx2i-fix-host-setup-and-libiscsi-abort-locking.patch
was included in kernel:
        kernel-2.6.18-160.el5.src.rpm 

set SanityOnly

Comment 10 Greg Morrison 2009-08-05 21:39:57 UTC
Testing 2.6.18-162.el5 now.  So far so good, I'll post issues if I find any.

Comment 12 errata-xmlrpc 2009-09-02 08:31:26 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-2009-1243.html


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