aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2007-04-25 20:54:47 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-04-26 01:25:14 -0400
commit0660e03f6b18f19b6bbafe7583265a51b90daf36 (patch)
tree82cc819ead5ab7858ba211ee8719a3e6d2bb984f /drivers/s390
parentd0a92be05ed4aea7d35c2b257e3f9173565fe4eb (diff)
[SK_BUFF]: Introduce ipv6_hdr(), remove skb->nh.ipv6h
Now the skb->nh union has just one member, .raw, i.e. it is just like the skb->mac union, strange, no? I'm just leaving it like that till the transport layer is done with, when we'll rename skb->mac.raw to skb->mac_header (or ->mac_header_offset?), ditto for ->{h,nh}. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390')
-rw-r--r--drivers/s390/net/qeth_eddp.c8
-rw-r--r--drivers/s390/net/qeth_main.c3
-rw-r--r--drivers/s390/net/qeth_tso.h2
3 files changed, 8 insertions, 5 deletions
diff --git a/drivers/s390/net/qeth_eddp.c b/drivers/s390/net/qeth_eddp.c
index 1574247abaa1..90da58b4e532 100644
--- a/drivers/s390/net/qeth_eddp.c
+++ b/drivers/s390/net/qeth_eddp.c
@@ -479,9 +479,11 @@ qeth_eddp_fill_context_tcp(struct qeth_eddp_context *ctx,
479 skb->h.raw, 479 skb->h.raw,
480 skb->h.th->doff * 4); 480 skb->h.th->doff * 4);
481 else 481 else
482 eddp = qeth_eddp_create_eddp_data(qhdr, (u8 *)skb->nh.ipv6h, 482 eddp = qeth_eddp_create_eddp_data(qhdr,
483 sizeof(struct ipv6hdr), 483 skb_network_header(skb),
484 (u8 *)skb->h.th, skb->h.th->doff*4); 484 sizeof(struct ipv6hdr),
485 skb->h.raw,
486 skb->h.th->doff * 4);
485 487
486 if (eddp == NULL) { 488 if (eddp == NULL) {
487 QETH_DBF_TEXT(trace, 2, "eddpfcnm"); 489 QETH_DBF_TEXT(trace, 2, "eddpfcnm");
diff --git a/drivers/s390/net/qeth_main.c b/drivers/s390/net/qeth_main.c
index 8a07d548a05a..df7f279ec408 100644
--- a/drivers/s390/net/qeth_main.c
+++ b/drivers/s390/net/qeth_main.c
@@ -4053,7 +4053,8 @@ qeth_fill_header(struct qeth_card *card, struct qeth_hdr *hdr,
4053 skb->dst->neighbour->primary_key, 16); 4053 skb->dst->neighbour->primary_key, 16);
4054 } else { 4054 } else {
4055 /* fill in destination address used in ip header */ 4055 /* fill in destination address used in ip header */
4056 memcpy(hdr->hdr.l3.dest_addr, &skb->nh.ipv6h->daddr, 16); 4056 memcpy(hdr->hdr.l3.dest_addr,
4057 &ipv6_hdr(skb)->daddr, 16);
4057 } 4058 }
4058 } else { /* passthrough */ 4059 } else { /* passthrough */
4059 if((skb->dev->type == ARPHRD_IEEE802_TR) && 4060 if((skb->dev->type == ARPHRD_IEEE802_TR) &&
diff --git a/drivers/s390/net/qeth_tso.h b/drivers/s390/net/qeth_tso.h
index 255cb2e9c796..4040bdd8c327 100644
--- a/drivers/s390/net/qeth_tso.h
+++ b/drivers/s390/net/qeth_tso.h
@@ -64,7 +64,7 @@ static inline void
64qeth_tso_set_tcpip_header(struct qeth_card *card, struct sk_buff *skb) 64qeth_tso_set_tcpip_header(struct qeth_card *card, struct sk_buff *skb)
65{ 65{
66 struct iphdr *iph = ip_hdr(skb); 66 struct iphdr *iph = ip_hdr(skb);
67 struct ipv6hdr *ip6h = skb->nh.ipv6h; 67 struct ipv6hdr *ip6h = ipv6_hdr(skb);
68 struct tcphdr *tcph = skb->h.th; 68 struct tcphdr *tcph = skb->h.th;
69 69
70 tcph->check = 0; 70 tcph->check = 0;