** Description changed:

+ 
+ == SRU Justification ==
+ Commit 66aa0678ef is request to fix four issues with the ibmveth driver.
+ The issues are as follows:
+ - Issue 1: ibmveth doesn't support largesend and checksum offload features 
when configured as "Trunk".
+ - Issue 2: SYN packet drops seen at destination VM. When the packet
+ originates, it has CHECKSUM_PARTIAL flag set and as it gets delivered to IO
+ server's inbound Trunk ibmveth, on validating "checksum good" bits in ibmveth
+ receive routine, SKB's ip_summed field is set with CHECKSUM_UNNECESSARY flag.
+ - Issue 3: First packet of a TCP connection will be dropped, if there is
+ no OVS flow cached in datapath.
+ - Issue 4: ibmveth driver doesn't have support for SKB's with frag_list.
+ 
+ The details for the fixes to these issues are described in the commits
+ git log.
+ 
+ 
+ 
  == Comment: #0 - BRYANT G. LY <[email protected]> - 2017-05-22 08:40:16 ==
  ---Problem Description---
  
-  - Issue 1: ibmveth doesn't support largesend and checksum offload features
-    when configured as "Trunk". Driver has explicit checks to prevent
-    enabling these offloads.
+  - Issue 1: ibmveth doesn't support largesend and checksum offload features
+    when configured as "Trunk". Driver has explicit checks to prevent
+    enabling these offloads.
  
-  - Issue 2: SYN packet drops seen at destination VM. When the packet
-    originates, it has CHECKSUM_PARTIAL flag set and as it gets delivered to
-    IO server's inbound Trunk ibmveth, on validating "checksum good" bits
-    in ibmveth receive routine, SKB's ip_summed field is set with
-    CHECKSUM_UNNECESSARY flag. This packet is then bridged by OVS (or Linux
-    Bridge) and delivered to outbound Trunk ibmveth. At this point the
-    outbound ibmveth transmit routine will not set "no checksum" and
-    "checksum good" bits in transmit buffer descriptor, as it does so only
-    when the ip_summed field is CHECKSUM_PARTIAL. When this packet gets
-    delivered to destination VM, TCP layer receives the packet with checksum
-    value of 0 and with no checksum related flags in ip_summed field. This
-    leads to packet drops. So, TCP connections never goes through fine.
+  - Issue 2: SYN packet drops seen at destination VM. When the packet
+    originates, it has CHECKSUM_PARTIAL flag set and as it gets delivered to
+    IO server's inbound Trunk ibmveth, on validating "checksum good" bits
+    in ibmveth receive routine, SKB's ip_summed field is set with
+    CHECKSUM_UNNECESSARY flag. This packet is then bridged by OVS (or Linux
+    Bridge) and delivered to outbound Trunk ibmveth. At this point the
+    outbound ibmveth transmit routine will not set "no checksum" and
+    "checksum good" bits in transmit buffer descriptor, as it does so only
+    when the ip_summed field is CHECKSUM_PARTIAL. When this packet gets
+    delivered to destination VM, TCP layer receives the packet with checksum
+    value of 0 and with no checksum related flags in ip_summed field. This
+    leads to packet drops. So, TCP connections never goes through fine.
  
-  - Issue 3: First packet of a TCP connection will be dropped, if there is
-    no OVS flow cached in datapath. OVS while trying to identify the flow,
-    computes the checksum. The computed checksum will be invalid at the
-    receiving end, as ibmveth transmit routine zeroes out the pseudo
-    checksum value in the packet. This leads to packet drop.
+  - Issue 3: First packet of a TCP connection will be dropped, if there is
+    no OVS flow cached in datapath. OVS while trying to identify the flow,
+    computes the checksum. The computed checksum will be invalid at the
+    receiving end, as ibmveth transmit routine zeroes out the pseudo
+    checksum value in the packet. This leads to packet drop.
  
-  - Issue 4: ibmveth driver doesn't have support for SKB's with frag_list.
-    When Physical NIC has GRO enabled and when OVS bridges these packets,
-    OVS vport send code will end up calling dev_queue_xmit, which in turn
-    calls validate_xmit_skb.
-    In validate_xmit_skb routine, the larger packets will get segmented into
-    MSS sized segments, if SKB has a frag_list and if the driver to which
-    they are delivered to doesn't support NETIF_F_FRAGLIST feature.
-  
- Contact Information = Bryant G. Ly/[email protected] 
-  
+  - Issue 4: ibmveth driver doesn't have support for SKB's with frag_list.
+    When Physical NIC has GRO enabled and when OVS bridges these packets,
+    OVS vport send code will end up calling dev_queue_xmit, which in turn
+    calls validate_xmit_skb.
+    In validate_xmit_skb routine, the larger packets will get segmented into
+    MSS sized segments, if SKB has a frag_list and if the driver to which
+    they are delivered to doesn't support NETIF_F_FRAGLIST feature.
+ 
+ Contact Information = Bryant G. Ly/[email protected]
+ 
  ---uname output---
  4.8.0-51.54
-  
- Machine Type = p8 
-  
+ 
+ Machine Type = p8
+ 
  ---Debugger---
  A debugger is not configured
-  
+ 
  ---Steps to Reproduce---
-  Increases performance greatly
+  Increases performance greatly
  
- The patch has been accepted upstream: 
+ The patch has been accepted upstream:
  https://patchwork.ozlabs.org/patch/764533/

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1692538

Title:
  Ubuntu 16.04.02: ibmveth: Support to enable LSO/CSO for Trunk VEA

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-power-systems/+bug/1692538/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to