[SRU][Yakkety][Zesty][Artful][PATCH 0/2] Fixes for LP:1697892

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[SRU][Yakkety][Zesty][Artful][PATCH 0/2] Fixes for LP:1697892

Joseph Salisbury-3
BugLink: http://bugs.launchpad.net/bugs/1697892

== SRU Justification ==
Kernel versions >= 4.2: bonding 802.3ad does not work with 5G, 25G and 50G link
speeds.  This bug is resolved by mainline commits 19ddde1 and c7c55067.  These
commits were included in mainline in the following versions:

19ddde1e: v4.12-rc1
c7c55067: v4.12-rc6

These commits are needed in Yakkety, Zesty and Artful.  They are also
needed in Xenial, but Xenial also requires two prereq commits.  Because
of this, Xenial will be submitted as a separate SRU request.

== Fixes ==
commit 19ddde1eeca1ee81f4add5e04da66055e09281ac
Author: Jarod Wilson <[hidden email]>
Date:   Tue Mar 14 11:48:32 2017 -0400

    bonding: add 802.3ad support for 25G speeds

commit c7c550670afda2e16f9e2d06a1473885312eb6b5
Author: Thibaut Collet <[hidden email]>
Date:   Thu Jun 8 11:18:11 2017 +0200

    bonding: fix 802.3ad support for 5G and 50G speeds

== Regression Potential ==
These commits are just adding new enum definitions, so risk of regression
is low.

== Test Case ==
A test kernel was built with these patches and tested by the original bug
reporter.  The bug reporter states the test kernel resolved the bug.

Jarod Wilson (1):
  bonding: add 802.3ad support for 25G speeds

Thibaut Collet (1):
  bonding: fix 802.3ad support for 5G and 50G speeds

 drivers/net/bonding/bond_3ad.c | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

--
2.7.4


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[SRU][Yakkety][Zesty][Artful][PATCH 1/2] bonding: add 802.3ad support for 25G speeds

Joseph Salisbury-3
From: Jarod Wilson <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1697892

Cut-n-paste enablement of 802.3ad bonding on 25G NICs, which currently
report 0 as their bandwidth.

CC: Jay Vosburgh <[hidden email]>
CC: Veaceslav Falico <[hidden email]>
CC: Andy Gospodarek <[hidden email]>
CC: [hidden email]
Signed-off-by: Jarod Wilson <[hidden email]>
Acked-by: Andy Gospodarek <[hidden email]>
Signed-off-by: David S. Miller <[hidden email]>
(cherry picked from commit 19ddde1eeca1ee81f4add5e04da66055e09281ac)
Signed-off-by: Joseph Salisbury <[hidden email]>
---
 drivers/net/bonding/bond_3ad.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/net/bonding/bond_3ad.c b/drivers/net/bonding/bond_3ad.c
index edc70ff..12240f8 100644
--- a/drivers/net/bonding/bond_3ad.c
+++ b/drivers/net/bonding/bond_3ad.c
@@ -92,6 +92,7 @@ enum ad_link_speed_type {
  AD_LINK_SPEED_2500MBPS,
  AD_LINK_SPEED_10000MBPS,
  AD_LINK_SPEED_20000MBPS,
+ AD_LINK_SPEED_25000MBPS,
  AD_LINK_SPEED_40000MBPS,
  AD_LINK_SPEED_56000MBPS,
  AD_LINK_SPEED_100000MBPS,
@@ -260,6 +261,7 @@ static inline int __check_agg_selection_timer(struct port *port)
  *     %AD_LINK_SPEED_2500MBPS,
  *     %AD_LINK_SPEED_10000MBPS
  *     %AD_LINK_SPEED_20000MBPS
+ *     %AD_LINK_SPEED_25000MBPS
  *     %AD_LINK_SPEED_40000MBPS
  *     %AD_LINK_SPEED_56000MBPS
  *     %AD_LINK_SPEED_100000MBPS
@@ -302,6 +304,10 @@ static u16 __get_link_speed(struct port *port)
  speed = AD_LINK_SPEED_20000MBPS;
  break;
 
+ case SPEED_25000:
+ speed = AD_LINK_SPEED_25000MBPS;
+ break;
+
  case SPEED_40000:
  speed = AD_LINK_SPEED_40000MBPS;
  break;
@@ -707,6 +713,9 @@ static u32 __get_agg_bandwidth(struct aggregator *aggregator)
  case AD_LINK_SPEED_20000MBPS:
  bandwidth = nports * 20000;
  break;
+ case AD_LINK_SPEED_25000MBPS:
+ bandwidth = nports * 25000;
+ break;
  case AD_LINK_SPEED_40000MBPS:
  bandwidth = nports * 40000;
  break;
--
2.7.4


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[SRU][Yakkety][Zesty][Artful][PATCH 2/2] bonding: fix 802.3ad support for 5G and 50G speeds

Joseph Salisbury-3
In reply to this post by Joseph Salisbury-3
From: Thibaut Collet <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1697892

This patch adds [5|50] Gbps enum definition, and fixes
aggregated bandwidth calculation based on above slave links.

Fixes: c9a70d43461d ("net-next: ethtool: Added port speed macros.")
Signed-off-by: Thibaut Collet <[hidden email]>
Signed-off-by: Nicolas Dichtel <[hidden email]>
Acked-by: Andy Gospodarek <[hidden email]>
Signed-off-by: David S. Miller <[hidden email]>
(cherry picked from commit c7c550670afda2e16f9e2d06a1473885312eb6b5)
Signed-off-by: Joseph Salisbury <[hidden email]>
---
 drivers/net/bonding/bond_3ad.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/net/bonding/bond_3ad.c b/drivers/net/bonding/bond_3ad.c
index 12240f8..ecec7b6 100644
--- a/drivers/net/bonding/bond_3ad.c
+++ b/drivers/net/bonding/bond_3ad.c
@@ -90,10 +90,12 @@ enum ad_link_speed_type {
  AD_LINK_SPEED_100MBPS,
  AD_LINK_SPEED_1000MBPS,
  AD_LINK_SPEED_2500MBPS,
+ AD_LINK_SPEED_5000MBPS,
  AD_LINK_SPEED_10000MBPS,
  AD_LINK_SPEED_20000MBPS,
  AD_LINK_SPEED_25000MBPS,
  AD_LINK_SPEED_40000MBPS,
+ AD_LINK_SPEED_50000MBPS,
  AD_LINK_SPEED_56000MBPS,
  AD_LINK_SPEED_100000MBPS,
 };
@@ -259,10 +261,12 @@ static inline int __check_agg_selection_timer(struct port *port)
  *     %AD_LINK_SPEED_100MBPS,
  *     %AD_LINK_SPEED_1000MBPS,
  *     %AD_LINK_SPEED_2500MBPS,
+ *     %AD_LINK_SPEED_5000MBPS,
  *     %AD_LINK_SPEED_10000MBPS
  *     %AD_LINK_SPEED_20000MBPS
  *     %AD_LINK_SPEED_25000MBPS
  *     %AD_LINK_SPEED_40000MBPS
+ *     %AD_LINK_SPEED_50000MBPS
  *     %AD_LINK_SPEED_56000MBPS
  *     %AD_LINK_SPEED_100000MBPS
  */
@@ -296,6 +300,10 @@ static u16 __get_link_speed(struct port *port)
  speed = AD_LINK_SPEED_2500MBPS;
  break;
 
+ case SPEED_5000:
+ speed = AD_LINK_SPEED_5000MBPS;
+ break;
+
  case SPEED_10000:
  speed = AD_LINK_SPEED_10000MBPS;
  break;
@@ -312,6 +320,10 @@ static u16 __get_link_speed(struct port *port)
  speed = AD_LINK_SPEED_40000MBPS;
  break;
 
+ case SPEED_50000:
+ speed = AD_LINK_SPEED_50000MBPS;
+ break;
+
  case SPEED_56000:
  speed = AD_LINK_SPEED_56000MBPS;
  break;
@@ -707,6 +719,9 @@ static u32 __get_agg_bandwidth(struct aggregator *aggregator)
  case AD_LINK_SPEED_2500MBPS:
  bandwidth = nports * 2500;
  break;
+ case AD_LINK_SPEED_5000MBPS:
+ bandwidth = nports * 5000;
+ break;
  case AD_LINK_SPEED_10000MBPS:
  bandwidth = nports * 10000;
  break;
@@ -719,6 +734,9 @@ static u32 __get_agg_bandwidth(struct aggregator *aggregator)
  case AD_LINK_SPEED_40000MBPS:
  bandwidth = nports * 40000;
  break;
+ case AD_LINK_SPEED_50000MBPS:
+ bandwidth = nports * 50000;
+ break;
  case AD_LINK_SPEED_56000MBPS:
  bandwidth = nports * 56000;
  break;
--
2.7.4


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

ACK / APPLIED[artful]: [SRU][Yakkety][Zesty][Artful][PATCH 0/2] Fixes for LP:1697892

Seth Forshee
In reply to this post by Joseph Salisbury-3
On Fri, Jul 14, 2017 at 10:53:17AM -0400, Joseph Salisbury wrote:

> BugLink: http://bugs.launchpad.net/bugs/1697892
>
> == SRU Justification ==
> Kernel versions >= 4.2: bonding 802.3ad does not work with 5G, 25G and 50G link
> speeds.  This bug is resolved by mainline commits 19ddde1 and c7c55067.  These
> commits were included in mainline in the following versions:
>
> 19ddde1e: v4.12-rc1
> c7c55067: v4.12-rc6
>
> These commits are needed in Yakkety, Zesty and Artful.  They are also
> needed in Xenial, but Xenial also requires two prereq commits.  Because
> of this, Xenial will be submitted as a separate SRU request.

Acked-by: Seth Forshee <[hidden email]>

Applied to artful/master-next, thanks.

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

ACK/cmnt: [SRU][Yakkety][Zesty][PATCH 1+2/2] bonding: add 802.3ad support for 25G speeds

Stefan Bader-2
In reply to this post by Joseph Salisbury-3
On 14.07.2017 16:53, Joseph Salisbury wrote:

> From: Jarod Wilson <[hidden email]>
>
> BugLink: http://bugs.launchpad.net/bugs/1697892
>
> Cut-n-paste enablement of 802.3ad bonding on 25G NICs, which currently
> report 0 as their bandwidth.
>
> CC: Jay Vosburgh <[hidden email]>
> CC: Veaceslav Falico <[hidden email]>
> CC: Andy Gospodarek <[hidden email]>
> CC: [hidden email]
> Signed-off-by: Jarod Wilson <[hidden email]>
> Acked-by: Andy Gospodarek <[hidden email]>
> Signed-off-by: David S. Miller <[hidden email]>
> (cherry picked from commit 19ddde1eeca1ee81f4add5e04da66055e09281ac)
> Signed-off-by: Joseph Salisbury <[hidden email]>
Acked-by: Stefan Bader <[hidden email]>

> ---

Might have been better grouped under the submission of "Fixes for LP:1697892".
Sounds reasonable though testing only could be done for 100G in Xenial.

-Stefan

>  drivers/net/bonding/bond_3ad.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
>
> diff --git a/drivers/net/bonding/bond_3ad.c b/drivers/net/bonding/bond_3ad.c
> index edc70ff..12240f8 100644
> --- a/drivers/net/bonding/bond_3ad.c
> +++ b/drivers/net/bonding/bond_3ad.c
> @@ -92,6 +92,7 @@ enum ad_link_speed_type {
>   AD_LINK_SPEED_2500MBPS,
>   AD_LINK_SPEED_10000MBPS,
>   AD_LINK_SPEED_20000MBPS,
> + AD_LINK_SPEED_25000MBPS,
>   AD_LINK_SPEED_40000MBPS,
>   AD_LINK_SPEED_56000MBPS,
>   AD_LINK_SPEED_100000MBPS,
> @@ -260,6 +261,7 @@ static inline int __check_agg_selection_timer(struct port *port)
>   *     %AD_LINK_SPEED_2500MBPS,
>   *     %AD_LINK_SPEED_10000MBPS
>   *     %AD_LINK_SPEED_20000MBPS
> + *     %AD_LINK_SPEED_25000MBPS
>   *     %AD_LINK_SPEED_40000MBPS
>   *     %AD_LINK_SPEED_56000MBPS
>   *     %AD_LINK_SPEED_100000MBPS
> @@ -302,6 +304,10 @@ static u16 __get_link_speed(struct port *port)
>   speed = AD_LINK_SPEED_20000MBPS;
>   break;
>  
> + case SPEED_25000:
> + speed = AD_LINK_SPEED_25000MBPS;
> + break;
> +
>   case SPEED_40000:
>   speed = AD_LINK_SPEED_40000MBPS;
>   break;
> @@ -707,6 +713,9 @@ static u32 __get_agg_bandwidth(struct aggregator *aggregator)
>   case AD_LINK_SPEED_20000MBPS:
>   bandwidth = nports * 20000;
>   break;
> + case AD_LINK_SPEED_25000MBPS:
> + bandwidth = nports * 25000;
> + break;
>   case AD_LINK_SPEED_40000MBPS:
>   bandwidth = nports * 40000;
>   break;
>


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team

signature.asc (836 bytes) Download Attachment
Loading...