Bug 550148 - [Cisco 5.5 bug] Update enic driver to version 1.1.0.241a
Summary: [Cisco 5.5 bug] Update enic driver to version 1.1.0.241a
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel
Version: 5.0
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: 5.5
Assignee: Andy Gospodarek
QA Contact: Red Hat Kernel QE team
URL:
Whiteboard:
Depends On:
Blocks: 5.5TechNotes-Updates
TreeView+ depends on / blocked
 
Reported: 2009-12-23 18:50 UTC by Scott Feldman
Modified: 2014-06-29 23:01 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
The enic driver has been updated to version 1.1.0.241a
Clone Of:
Environment:
Last Closed: 2010-03-30 07:09:08 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Bug fix: use safe queue shutdown in dev->stop (3.40 KB, patch)
2009-12-23 19:01 UTC, Scott Feldman
no flags Details | Diff
Bug fix: try harder to fill Rx ring on skb allocation failures (2.84 KB, patch)
2009-12-23 19:02 UTC, Scott Feldman
no flags Details | Diff
minimize pkt filter updates to firmware (1.37 KB, patch)
2009-12-23 19:02 UTC, Scott Feldman
no flags Details | Diff
Bug fix: align desc ring sizes to 32 descs (749 bytes, patch)
2009-12-23 19:03 UTC, Scott Feldman
no flags Details | Diff
feature add: add ethtool -c/C support (6.92 KB, patch)
2009-12-23 19:03 UTC, Scott Feldman
no flags Details | Diff
whitespace cleanup; #define cleanup; more verbose err msg (1.68 KB, patch)
2009-12-23 19:04 UTC, Scott Feldman
no flags Details | Diff
remove duplicate code left over from previous merge (533 bytes, patch)
2009-12-23 19:05 UTC, Scott Feldman
no flags Details | Diff
Consolidated single patch for all changes (16.80 KB, patch)
2010-01-07 06:33 UTC, Scott Feldman
no flags Details | Diff
enic-5.5-proposed.patch (18.56 KB, patch)
2010-01-08 20:33 UTC, Andy Gospodarek
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2010:0178 0 normal SHIPPED_LIVE Important: Red Hat Enterprise Linux 5.5 kernel security and bug fix update 2010-03-29 12:18:21 UTC

Description Scott Feldman 2009-12-23 18:50:00 UTC
1.  Feature Overview:
     a. See summary

     b. Feature Description
          Update the enic driver from 1.1.0.100 to 1.1.0.241a to address issues 
          found during test leading up to Beta.  The updates have been posted 
          to the upstream netdev mailing list


2.  Feature Details:
     a. Architectures:
         32-bit x86
         64-bit Intel EM64T/AMD64
                :
     b. Red Hat Bugzilla Dependencies:
         519086

     c. Drivers or hardware dependencies:

     d. Upstream acceptance information:
          The patches have been submitted upstream, reviewed, and resubmitted to 
          address review comments.  Pending acceptance by netdev maintainer soon,
          but may be delayed due to holiday.

     e. External links:
         http://marc.info/?l=linux-netdev&m=126144848408169&w=2
         http://marc.info/?l=linux-netdev&m=126144849308176&w=2
         http://marc.info/?l=linux-netdev&m=126144849808180&w=2
         http://marc.info/?l=linux-netdev&m=126144850508191&w=2
         http://marc.info/?l=linux-netdev&m=126144851008195&w=2
         http://marc.info/?l=linux-netdev&m=126144851508199&w=2
         http://marc.info/?l=linux-netdev&m=126144852108207&w=2

     f. Severity (U,H,M,L):
         High (required for Hardware Enablement)

     g. Target Release Date:
         HW releasing beginning of Q1'10


3. Business Justification:
     a. Why is this feature needed?
         To fix bugs found in testing of Cisco's 10G Ethernet NIC
     b. What hardware does this enable?
         Cisco's 10G Ethernet NIC included with Cisco's UCS blade server product
     c. Forecast, impact on revenue?
     d. Any configuration info?
     e. Are there other dependencies (drivers).

4. Primary contact at Red Hat, email, phone (chat)
    First_Name Last_Name
    xxx_xxxx
     Phone Number

5. Primary contact at Partner, email, phone (chat)
    Scott Feldman
    scofeldm
    408-387-6062

Comment 1 Scott Feldman 2009-12-23 18:57:32 UTC
Attached reworked patches that apply cleanly to 182.el5 test kernel found at: http://people.redhat.com/dzickus/el5.  These are the same patches posted upstream, just re-diffed against the latest RH 182 kernel.  There is one additional patch (the latest one) that's need only for RH 182 to fix a previous merge error where some lines in the code are duplicated.

Comment 2 Scott Feldman 2009-12-23 19:01:20 UTC
Created attachment 380075 [details]
Bug fix: use safe queue shutdown in dev->stop

Fix dev->stop shutdown bug where driver was stopping xmit queue and then
disabling intrs.  Fix is to disable intrs first and then stop the xmit
queue, otherwise an interrupt could cause the queue to be rewoken.  Also,
no need to explicitly do queue servicing because queues are cleaned and
reset back to initial state at end of dev->stop.  Servicing queues also
had the side-effect of also rewakening the xmit queue, which is not what
we want.

Signed-off-by: Vasanthy Kolluri <vkolluri>
Signed-off-by: Scott Feldman <scofeldm>

Comment 3 Scott Feldman 2009-12-23 19:02:00 UTC
Created attachment 380076 [details]
Bug fix: try harder to fill Rx ring on skb allocation failures

During dev->open(), make sure we get at least one skb on the Rx ring. 
Otherwise abort the interface load.  Also, if we get skb allocation
failures in NAPI poll while trying to replenish the ring, try again
later so we don't end up starving out the Rx ring completely.

Comment 4 Scott Feldman 2009-12-23 19:02:43 UTC
Created attachment 380077 [details]
minimize pkt filter updates to firmware

In set_multicast(), only push pkt filter changes down to firmware if
pkt filter actually changes.

Comment 5 Scott Feldman 2009-12-23 19:03:26 UTC
Created attachment 380078 [details]
Bug fix: align desc ring sizes to 32 descs

Previous driver was aligning ring sizes to 16 descs, but hardware actually
wants desc ring sizes to be aligned to 32 descs.

Signed-off-by: Vasanthy Kolluri <vkolluri>
Signed-off-by: Scott Feldman <scofeldm>

Comment 6 Scott Feldman 2009-12-23 19:03:58 UTC
Created attachment 380079 [details]
feature add: add ethtool -c/C support

Only rx_usec and tx_usec options for ethtool -C are settable as those
are the only settings that make sense to HW.  Adds driver reporting of 
intr coalescing timer value in usec units rather than HW units.

Signed-off-by: Vasanthy Kolluri <vkolluri>
Signed-off-by: Scott Feldman <scofeldm>

Comment 7 Scott Feldman 2009-12-23 19:04:33 UTC
Created attachment 380080 [details]
whitespace cleanup; #define cleanup; more verbose err msg

Some misc changes to cleanup whitespace issues and fix/remove some #define
HW defintions.

1) fix some whitespace issues
2) more verbose err msg when resources aren't available to configure vnic
3) remove unused #define
4) fix RSS #define rss hash types

Signed-off-by: Vasanthy Kolluri <vkolluri>
Signed-off-by: Scott Feldman <scofeldm>

Comment 8 Scott Feldman 2009-12-23 19:05:22 UTC
Created attachment 380081 [details]
remove duplicate code left over from previous merge

remove duplicate code left over from previous merge

Comment 9 Andrius Benokraitis 2009-12-23 19:56:53 UTC
Thanks Scott - we'll take a look at these first thing in 2010.

Comment 10 Scott Feldman 2009-12-25 05:52:14 UTC
The patches were accepted upstream by davem...

Comment 13 RHEL Program Management 2010-01-04 19:42:04 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 14 Chris Ward 2010-01-05 14:33:29 UTC
@Cisco

We need to confirm that there is commitment to test for 
the resolution of this request during the RHEL 5.5 Beta 
Test Phase before we can approve it for acceptance 
into the release.

RHEL 5.5 Beta Test Phase is expected to begin around February
2010.

In order to avoid any unnecessary delays, please post a 
confirmation as soon as possible, including the contact 
information for testing engineers.

Any additional information about alternative testing variations we 
could use to reproduce this issue in-house would be appreciated.

Comment 15 Scott Feldman 2010-01-06 22:18:48 UTC
Chris,

Per your comment #14, Cisco is committed to testing enic updates for RHEL 5.5
beta test.

The Cisco QA contact is Anthony Kent <antkent>.

-scott

Comment 16 Scott Feldman 2010-01-07 06:33:59 UTC
Created attachment 382165 [details]
Consolidated single patch for all changes

Consolidated single patch for all changes.  This applies cleanly against 2.6.18-183.el5.  I thought I'd include it here for convenience.

Comment 17 Andy Gospodarek 2010-01-08 20:33:43 UTC
Created attachment 382544 [details]
enic-5.5-proposed.patch

Scott, thanks for the help with this driver.  I've proposed the following patch for inclusion in RHEL5.5.  It includes a 2 other small commits that we missed in the past:

commit d19e22dc2c1c43724c1d9ce4a5456ae74eeb6da8
Author: Scott Feldman <scofeldm>
Date:   Thu Sep 3 17:02:08 2009 +0000

    enic: use netdev_alloc_skb

commit 09640e6365c679b5642b1c41b6d7078f51689ddf
Author: Harvey Harrison <harvey.harrison>
Date:   Sun Feb 1 00:45:17 2009 -0800

    net: replace uses of __constant_{endian}

so we are now shipping code that is almost identical to what is in net-next-2.6 aside from backporting differences.  Please let me know if you see any problems with these changes.

Comment 19 Scott Feldman 2010-01-08 20:49:26 UTC
Andy, the proposed patch looks good.  Near identical to net-next-2.6 is great.  Thanks Andy.

-scott

Comment 22 Chris Ward 2010-02-11 10:32:34 UTC
~~ Attention Customers and Partners - RHEL 5.5 Beta is now available on RHN ~~

RHEL 5.5 Beta has been released! There should be a fix present in this 
release that addresses your request. Please test and report back results 
here, by March 3rd 2010 (2010-03-03) or sooner.

Upon successful verification of this request, post your results and update 
the Verified field in Bugzilla with the appropriate value.

If you encounter any issues while testing, please describe them and set 
this bug into NEED_INFO. If you encounter new defects or have additional 
patch(es) to request for inclusion, please clone this bug per each request
and escalate through your support representative.

Comment 23 Andrius Benokraitis 2010-02-11 18:00:48 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:
The enic driver has been updated to version 1.1.0.241a

Comment 24 Scott Feldman 2010-02-11 18:07:21 UTC
Yes, confirmed RHEL 5.5 Beta has enic 1.1.0.241a.  Full testing started with pre-Beta drop, and now test has transitioned to Beta.  Will report test results later.

Comment 26 Scott Feldman 2010-03-10 04:23:51 UTC
Automation enic test suite 100% complete, all PASS.

Manual testing ongoing, 15% complete/PASS so far.

Comment 28 errata-xmlrpc 2010-03-30 07:09:08 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-2010-0178.html


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