mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 16:24:13 +08:00
qeth: add statistics for tx csum
Add statistics counter for software tx checksumming. Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7f6d95e7bd
commit
f61a0d0538
@ -134,6 +134,7 @@ struct qeth_perf_stats {
|
|||||||
unsigned int sg_skbs_rx;
|
unsigned int sg_skbs_rx;
|
||||||
unsigned int sg_frags_rx;
|
unsigned int sg_frags_rx;
|
||||||
unsigned int sg_alloc_page_rx;
|
unsigned int sg_alloc_page_rx;
|
||||||
|
unsigned int tx_csum;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Routing stuff */
|
/* Routing stuff */
|
||||||
|
@ -4327,6 +4327,7 @@ static struct {
|
|||||||
/* 30 */{"tx count"},
|
/* 30 */{"tx count"},
|
||||||
{"tx do_QDIO time"},
|
{"tx do_QDIO time"},
|
||||||
{"tx do_QDIO count"},
|
{"tx do_QDIO count"},
|
||||||
|
{"tx csum"},
|
||||||
};
|
};
|
||||||
|
|
||||||
int qeth_core_get_stats_count(struct net_device *dev)
|
int qeth_core_get_stats_count(struct net_device *dev)
|
||||||
@ -4378,6 +4379,7 @@ void qeth_core_get_ethtool_stats(struct net_device *dev,
|
|||||||
data[30] = card->perf_stats.outbound_cnt;
|
data[30] = card->perf_stats.outbound_cnt;
|
||||||
data[31] = card->perf_stats.outbound_do_qdio_time;
|
data[31] = card->perf_stats.outbound_do_qdio_time;
|
||||||
data[32] = card->perf_stats.outbound_do_qdio_cnt;
|
data[32] = card->perf_stats.outbound_do_qdio_cnt;
|
||||||
|
data[33] = card->perf_stats.tx_csum;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(qeth_core_get_ethtool_stats);
|
EXPORT_SYMBOL_GPL(qeth_core_get_ethtool_stats);
|
||||||
|
|
||||||
|
@ -707,8 +707,11 @@ static int qeth_l2_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((large_send == QETH_LARGE_SEND_NO) &&
|
if ((large_send == QETH_LARGE_SEND_NO) &&
|
||||||
(skb->ip_summed == CHECKSUM_PARTIAL))
|
(skb->ip_summed == CHECKSUM_PARTIAL)) {
|
||||||
qeth_tx_csum(new_skb);
|
qeth_tx_csum(new_skb);
|
||||||
|
if (card->options.performance_stats)
|
||||||
|
card->perf_stats.tx_csum++;
|
||||||
|
}
|
||||||
|
|
||||||
if (card->info.type != QETH_CARD_TYPE_IQD)
|
if (card->info.type != QETH_CARD_TYPE_IQD)
|
||||||
rc = qeth_do_send_packet(card, queue, new_skb, hdr,
|
rc = qeth_do_send_packet(card, queue, new_skb, hdr,
|
||||||
|
@ -2711,8 +2711,11 @@ static int qeth_l3_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((large_send == QETH_LARGE_SEND_NO) &&
|
if ((large_send == QETH_LARGE_SEND_NO) &&
|
||||||
(new_skb->ip_summed == CHECKSUM_PARTIAL))
|
(new_skb->ip_summed == CHECKSUM_PARTIAL)) {
|
||||||
qeth_tx_csum(new_skb);
|
qeth_tx_csum(new_skb);
|
||||||
|
if (card->options.performance_stats)
|
||||||
|
card->perf_stats.tx_csum++;
|
||||||
|
}
|
||||||
|
|
||||||
if (card->info.type != QETH_CARD_TYPE_IQD)
|
if (card->info.type != QETH_CARD_TYPE_IQD)
|
||||||
rc = qeth_do_send_packet(card, queue, new_skb, hdr,
|
rc = qeth_do_send_packet(card, queue, new_skb, hdr,
|
||||||
|
Loading…
Reference in New Issue
Block a user