qeth: l3 fix len in tso hdr
authorFrank Blaschka <frank.blaschka@de.ibm.com>
Fri, 26 Nov 2010 02:41:20 +0000 (02:41 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 29 Nov 2010 02:13:18 +0000 (18:13 -0800)
The tso hdr is longer then the regular l3 hdr. Fix the calculation
of the total len by accounting the size of the tso hdr.

Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_l3_main.c

index 3ddd5add798432848425d6cfcdbefb4c6a52aa32..a1abb37db000cbc685f744bc13e50cb5675b3d63 100644 (file)
@@ -2939,6 +2939,7 @@ static void qeth_tso_fill_header(struct qeth_card *card,
 
        /*fix header to TSO values ...*/
        hdr->hdr.hdr.l3.id = QETH_HEADER_TYPE_TSO;
+       hdr->hdr.hdr.l3.length = skb->len - sizeof(struct qeth_hdr_tso);
        /*set values which are fix for the first approach ...*/
        hdr->ext.hdr_tot_len = (__u16) sizeof(struct qeth_hdr_ext_tso);
        hdr->ext.imb_hdr_no  = 1;