]> Pileus Git - ~andy/linux/blobdiff - drivers/s390/net/qeth_core_main.c
qeth: Fix missing pointer update
[~andy/linux] / drivers / s390 / net / qeth_core_main.c
index 0aa9462c50ecbc8c8876add4168ec3d196d8ea05..a86ce07736ef4d620ca8280c6d71d5697aa11d3f 100644 (file)
@@ -3717,7 +3717,7 @@ int qeth_get_elements_no(struct qeth_card *card,
 }
 EXPORT_SYMBOL_GPL(qeth_get_elements_no);
 
-int qeth_hdr_chk_and_bounce(struct sk_buff *skb, int len)
+int qeth_hdr_chk_and_bounce(struct sk_buff *skb, struct qeth_hdr **hdr, int len)
 {
        int hroom, inpage, rest;
 
@@ -3730,6 +3730,8 @@ int qeth_hdr_chk_and_bounce(struct sk_buff *skb, int len)
                        return 1;
                memmove(skb->data - rest, skb->data, skb->len - skb->data_len);
                skb->data -= rest;
+               skb->tail -= rest;
+               *hdr = (struct qeth_hdr *)skb->data;
                QETH_DBF_MESSAGE(2, "skb bounce len: %d rest: %d\n", len, rest);
        }
        return 0;