Bug 508871 - [Emulex 5.4 bug] Unload of bonding driver causes be2net driver to deadlock
[Emulex 5.4 bug] Unload of bonding driver causes be2net driver to deadlock
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel (Show other bugs)
All Linux
high Severity high
: rc
: 5.4
Assigned To: Andy Gospodarek
Red Hat Kernel QE team
: OtherQA
Depends On: 490074 508839
Blocks: 461676
  Show dependency treegraph
Reported: 2009-06-30 07:17 EDT by Subbu Seetharaman
Modified: 2013-09-16 02:09 EDT (History)
15 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-09-02 04:15:23 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
patch to fix deadlock seen when rmmoding bonding driver (44.89 KB, patch)
2009-06-30 13:02 EDT, Subbu Seetharaman
no flags Details | Diff

  None (edit)
Description Subbu Seetharaman 2009-06-30 07:17:05 EDT
Description of problem:

A test that repeatedly loads bonding driver, enslaves a be2net interface and unloads the bonding driver will result in a system freeze.

How reproducible:

One out of 10 attempts to load and unload bonding driver with a be2net interface as slave.

Steps to Reproduce:

Run the following commands in a loop :

rmmod bonding
modprobe bonding miimon=100
echo 4 > /sys/class/net/bond0/bonding/mode
ifconfig bond0 <IP-ADDR>netmask
ifenslave bond0 eth2 eth3
ping -q -c 10 -w 10 <IP-ADDR-OF-PEER>
Actual results:

System will lock up in couple of minutes.

Expected results:

The test must continue without any problem.
Comment 2 Andy Gospodarek 2009-06-30 09:32:53 EDT
Subbu, do you have any additional information for this problem?  Backtraces, patches, etc?

I would like to help with this, but I will not have the ability to use my card for a day or two so I cannot test this.
Comment 3 Subbu Seetharaman 2009-06-30 09:42:52 EDT
The problem is understood and fixed.  Fix has been tested and pushed upstream.  I will shortly be attaching the patch.

Comment 4 Andy Gospodarek 2009-06-30 10:50:01 EDT
(In reply to comment #3)
> The problem is understood and fixed.  Fix has been tested and pushed upstream. 
> I will shortly be attaching the patch.
> Subbu  

OK, great!

I didn't see anything on netdev (at least based on this subject), so I was just trying to figure out what needed to be done.

Comment 5 Subbu Seetharaman 2009-06-30 13:02:26 EDT
Created attachment 349974 [details]
patch to fix deadlock seen when rmmoding bonding driver

Current driver uses the MCC mailbox to post all f/w cmds. mbox posting is protected via a spin_lock(cmd_lock). This can result in a lockup for multicast_set and promiscous_config cmds that may be called in the BH context. spin_lock_bh() must not be used to prevent disabling of BHs while polling on the mbox. This patch modifies the driver to post these cmds on the MCC queue (rather than poll on the mbox) and the completions rcvd asynchronously. Async link status notifications are also rcvd as a part of MCC infrastructure.

These changes were submitted to netdev on 6/18 as a four patch series.

Comment 6 Andrius Benokraitis 2009-07-01 15:51:37 EDT
Subbu - *please* make sure I'm included in the CC-list if you create any new bugzillas, thanks.
Comment 7 Subbu Seetharaman 2009-07-02 00:59:59 EDT
Sorry about that Andrius.  Will do that in future.

I have been using the the "depends on" field to indicate the patch order.  Is that the appropriate way to indicate the patch order.


Comment 9 RHEL Product and Program Management 2009-07-02 14:43:42 EDT
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
Comment 11 Don Zickus 2009-07-07 11:06:07 EDT
in kernel-2.6.18-157.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 13 Subbu Seetharaman 2009-07-09 08:48:07 EDT
Verified on 2.6.18-157.

Comment 15 Chris Ward 2009-08-03 11:47:30 EDT
~~ Attention Partners - RHEL 5.4 Snapshot 5 Released! ~~

RHEL 5.4 Snapshot 5 is the FINAL snapshot to be release before RC. It has been 
released on partners.redhat.com. If you have already reported your test results, 
you can safely ignore this request. Otherwise, please notice that there should be 
a fix available now that addresses this particular issue. Please test and report 
back your results here, at your earliest convenience.

If you encounter any issues while testing Beta, please describe the 
issues you have encountered and set the bug into NEED_INFO. If you 
encounter new issues, please clone this bug to open a new issue and 
request it be reviewed for inclusion in RHEL 5.4 or a later update, if it 
is not of urgent severity. If it is urgent, escalate the issue to your partner manager as soon as possible. There is /very/ little time left to get additional code into 5.4 before GA.

Partners, after you have verified, do not flip the bug status to VERIFIED. Instead, please set your Partner ID in the Verified field above if you have successfully verified the resolution of this issue. 

Further questions can be directed to your Red Hat Partner Manager or other 
appropriate customer representative.
Comment 17 errata-xmlrpc 2009-09-02 04:15:23 EDT
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.


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