[ovs-dev] [PATCH 4/5] datapth: Drop check for impossible condition after skb_gso_segment().

Jesse Gross jesse at nicira.com
Fri Dec 10 20:42:56 UTC 2010


It's possible for skb_gso_segment to return NULL but only if the
hardware supports the correct form of segmentation offload but just
wants software to verify the offload parameters.  However, since we're
not hardware and don't support any kind of segmentation offload natively,
we can never get in this situation.  Therefore drop the check and
comment.

Signed-off-by: Jesse Gross <jesse at nicira.com>
---
 datapath/datapath.c |   16 ++++++----------
 1 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/datapath/datapath.c b/datapath/datapath.c
index ffe3bd8..cc76720 100644
--- a/datapath/datapath.c
+++ b/datapath/datapath.c
@@ -609,16 +609,12 @@ int dp_output_control(struct datapath *dp, struct sk_buff *skb, int queue_no,
 	 * userspace may try to stuff a 64kB packet into a 1500-byte MTU. */
 	if (skb_is_gso(skb)) {
 		struct sk_buff *nskb = skb_gso_segment(skb, NETIF_F_SG | NETIF_F_HW_CSUM);
-		if (nskb) {
-			kfree_skb(skb);
-			skb = nskb;
-			if (unlikely(IS_ERR(skb))) {
-				err = PTR_ERR(skb);
-				goto err;
-			}
-		} else {
-			/* XXX This case might not be possible.  It's hard to
-			 * tell from the skb_gso_segment() code and comment. */
+		
+		kfree_skb(skb);
+		skb = nskb;
+		if (unlikely(IS_ERR(skb))) {
+			err = PTR_ERR(skb);
+			goto err;
 		}
 	}
 
-- 
1.7.1





More information about the dev mailing list