[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070108162934.GA21639@de.ibm.com>
Date: Mon, 8 Jan 2007 17:29:34 +0100
From: Frank Pavlic <fpavlic@...ibm.com>
To: jgarzik@...ox.com
Cc: netdev@...r.kernel.org
Subject: [PATCH 1/5] s390: qeth driver fixes
Hi ,
please apply following 5 patches for s390 network device drivers.
Sorry for the fifth patch containing some lines which just remove
whitespaces. Another patch will follow in the next couple of days
with more whitespace and coding style cleanups in drivers/s390/net.
Thank you
Frank
[PATCH 1/5] s390: qeth driver fixes
From: Frank Blaschka <Frank.Blaschka@...ibm.com>
From: Ursula Braun <braunu@...ibm.com>
- VLAN header reordering did not work on packets
received through qeth interface in layer 2 mode.
This caused dhcpcd not to work with VLAN devices.
- set qeth performance statistics initally inactive
Signed-off-by: Frank Pavlic <fpavlic@...ibm.com>
---
drivers/s390/net/qeth_main.c | 21 +++------------------
1 files changed, 3 insertions(+), 18 deletions(-)
diff --git a/drivers/s390/net/qeth_main.c b/drivers/s390/net/qeth_main.c
index 2bde4f1..67062d5 100644
--- a/drivers/s390/net/qeth_main.c
+++ b/drivers/s390/net/qeth_main.c
@@ -1074,7 +1074,7 @@ #endif /* QETH_IPV6 */
card->options.layer2 = 1;
else
card->options.layer2 = 0;
- card->options.performance_stats = 1;
+ card->options.performance_stats = 0;
}
/**
@@ -2466,32 +2466,17 @@ qeth_rebuild_skb_fake_ll(struct qeth_car
qeth_rebuild_skb_fake_ll_eth(card, skb, hdr);
}
-static inline __u16
+static inline void
qeth_layer2_rebuild_skb(struct qeth_card *card, struct sk_buff *skb,
struct qeth_hdr *hdr)
{
- unsigned short vlan_id = 0;
-#ifdef CONFIG_QETH_VLAN
- struct vlan_hdr *vhdr;
-#endif
-
skb->pkt_type = PACKET_HOST;
skb->protocol = qeth_type_trans(skb, skb->dev);
if (card->options.checksum_type == NO_CHECKSUMMING)
skb->ip_summed = CHECKSUM_UNNECESSARY;
else
skb->ip_summed = CHECKSUM_NONE;
-#ifdef CONFIG_QETH_VLAN
- if (hdr->hdr.l2.flags[2] & (QETH_LAYER2_FLAG_VLAN)) {
- vhdr = (struct vlan_hdr *) skb->data;
- skb->protocol =
- __constant_htons(vhdr->h_vlan_encapsulated_proto);
- vlan_id = hdr->hdr.l2.vlan_id;
- skb_pull(skb, VLAN_HLEN);
- }
-#endif
*((__u32 *)skb->cb) = ++card->seqno.pkt_seqno;
- return vlan_id;
}
static inline __u16
@@ -2571,7 +2556,7 @@ qeth_process_inbound_buffer(struct qeth_
&offset, &hdr))) {
skb->dev = card->dev;
if (hdr->hdr.l2.id == QETH_HEADER_TYPE_LAYER2)
- vlan_tag = qeth_layer2_rebuild_skb(card, skb, hdr);
+ qeth_layer2_rebuild_skb(card, skb, hdr);
else if (hdr->hdr.l3.id == QETH_HEADER_TYPE_LAYER3)
vlan_tag = qeth_rebuild_skb(card, skb, hdr);
else { /*in case of OSN*/
--
1.4.2.3
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists