Skip to contentSkip to conversation

s390: qeth bug fixes

PATCH In review Frank Pavlic 1 participant 1 message May 27, 2005

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 7/10 s390: qeth bug fixes

[patch 7/10] s390: qeth bug fixes.

From: Frank Pavlic <[email protected]>

qeth network driver changes:
- Removed redundant code, use the same qeth_fill_buffer_frag for TSO path either
- Using skb->frags solely is not correct since skb->data still points to the beginning of the whole data, even when it is a small portion we have to fill the qdio buffer with it.

diffstat:

 drivers/s390/net/qeth.h      |   13 +++++++
 drivers/s390/net/qeth_eddp.c |   15 +--------
 drivers/s390/net/qeth_main.c |   49 ++---------------------------
 drivers/s390/net/qeth_tso.c  |   49 ++++++-----------------------
 drivers/s390/net/qeth_tso.h  |   71 +++++++++++++++++++++++++++++++++++--------
 5 files changed, 86 insertions(+), 111 deletions(-)
drivers/s390/net/qeth_eddp.c +2 -13
diff -urpN linux-2.6/drivers/s390/net/qeth_eddp.c linux-2.6-patched/drivers/s390/net/qeth_eddp.c
@@ -1,6 +1,6 @@
 /*
  *
- * linux/drivers/s390/net/qeth_eddp.c ($Revision: 1.11 $)
+ * linux/drivers/s390/net/qeth_eddp.c ($Revision: 1.12 $)
  *
  * Enhanced Device Driver Packing (EDDP) support for the qeth driver.
  *
@@ -8,7 +8,7 @@
  *
  *    Author(s): Thomas Spatzier <[email protected]>
  *
- *    $Revision: 1.11 $	 $Date: 2005/03/24 09:04:18 $
+ *    $Revision: 1.12 $	 $Date: 2005/04/01 21:40:40 $
  *
  */
 #include <linux/config.h>
@@ -202,17 +202,6 @@ out:
 	return flush_cnt;
 }
 
-static inline int
-qeth_get_skb_data_len(struct sk_buff *skb)
-{
-	int len = skb->len;
-	int i;
-
-	for (i = 0; i < skb_shinfo(skb)->nr_frags; ++i)
-		len -= skb_shinfo(skb)->frags[i].size;
-	return len;
-}
-
 static inline void
 qeth_eddp_create_segment_hdrs(struct qeth_eddp_context *ctx,
 			      struct qeth_eddp_data *eddp)
drivers/s390/net/qeth.h +12 -1
diff -urpN linux-2.6/drivers/s390/net/qeth.h linux-2.6-patched/drivers/s390/net/qeth.h
@@ -24,7 +24,7 @@
 
 #include "qeth_mpc.h"
 
-#define VERSION_QETH_H 		"$Revision: 1.135 $"
+#define VERSION_QETH_H 		"$Revision: 1.136 $"
 
 #ifdef CONFIG_QETH_IPV6
 #define QETH_VERSION_IPV6 	":IPv6"
@@ -866,6 +866,17 @@ qeth_push_skb(struct qeth_card *card, st
         return hdr;
 }
 
+static inline int
+qeth_get_skb_data_len(struct sk_buff *skb)
+{
+	int len = skb->len;
+	int i;
+
+	for (i = 0; i < skb_shinfo(skb)->nr_frags; ++i)
+		len -= skb_shinfo(skb)->frags[i].size;
+	return len;
+}
+
 inline static int
 qeth_get_hlen(__u8 link_type)
 {
drivers/s390/net/qeth_main.c +4 -45

78 lines not on this page · raw message

drivers/s390/net/qeth_tso.c +10 -39

88 lines not on this page · raw message

drivers/s390/net/qeth_tso.h +58 -13

92 lines not on this page · raw message