From: Hans-Joachim Picht <hpicht@redhat.com> Date: Fri, 4 Apr 2008 19:50:45 +0200 Subject: [s390] lcs: ccl-seq. numbers required for prot. 802.2 Message-id: 20080404175045.GE9759@redhat.com O-Subject: [RHEL5 U3 PATCH 5/7] s390 - lcs: CCL-seq. numbers required for prot. 802.2 only Bugzilla: 440416 RH-Acked-by: Pete Zaitcev <zaitcev@redhat.com> Description ============ We see slow CCL response time because non-ETH_P_802_2 packets are not delivered to NDH for CCL but CCL detects missing sequence numbers, which cause a serious performance problem with CCL. The problem is fixed assigning sequence numbers to 802.2 packets only Bugzilla ========= BZ 440416 https://bugzilla.redhat.com/show_bug.cgi?id=440416 Upstream status of the patch: ============================= This patch will be posted upstream in the next merge window. I'll reply to this message as soon as we have a git commit id Test status: ============ Kernel with patch was built and successfully tested Please ACK. With best regards, Hans drivers/s390/net/lcs.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/s390/net/lcs.c b/drivers/s390/net/lcs.c index 2c8347b..d6b8be3 100644 --- a/drivers/s390/net/lcs.c +++ b/drivers/s390/net/lcs.c @@ -1791,7 +1791,8 @@ lcs_get_skb(struct lcs_card *card, char *skb_data, unsigned int skb_len) skb->protocol = card->lan_type_trans(skb, card->dev); card->stats.rx_bytes += skb_len; card->stats.rx_packets++; - *((__u32 *)skb->cb) = ++card->pkt_seq; + if (skb->protocol == htons(ETH_P_802_2)) + *((__u32 *)skb->cb) = ++card->pkt_seq; netif_rx(skb); }