[net-next,08/14] tipc: Fix bug in broadcast link transmit statistics computation

Submitted by Paul Gortmaker on Aug. 17, 2010, 9 p.m.

Details

Message ID 1282078816-11844-9-git-send-email-paul.gortmaker@windriver.com
State Accepted
Delegated to: David Miller
Headers show

Commit Message

Paul Gortmaker Aug. 17, 2010, 9 p.m.
From: Allan Stephens <allan.stephens@windriver.com>

Modify TIPC's broadcast link so that it counts each piece of a
fragmented message individually, rather than as treating the group
as a single message.  This ensures that proper correlation of sent
and received traffic can be done when the broadcast link statistics
are displayed, and is consistent with the way fragments are counted
by TIPC's unicast links.

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 net/tipc/bcast.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

Patch hide | download patch | download mbox

diff --git a/net/tipc/bcast.c b/net/tipc/bcast.c
index eefdd1a..b11248c 100644
--- a/net/tipc/bcast.c
+++ b/net/tipc/bcast.c
@@ -409,10 +409,8 @@  int tipc_bclink_send_msg(struct sk_buff *buf)
 	res = tipc_link_send_buf(bcl, buf);
 	if (unlikely(res == -ELINKCONG))
 		buf_discard(buf);
-	else {
-		bcl->stats.sent_info++;
+	else
 		bclink_set_last_sent();
-	}
 
 	if (bcl->out_queue_size > bcl->stats.max_queue_sz)
 		bcl->stats.max_queue_sz = bcl->out_queue_size;
@@ -578,6 +576,7 @@  static int tipc_bcbearer_send(struct sk_buff *buf,
 		msg = buf_msg(buf);
 		msg_set_non_seq(msg, 1);
 		msg_set_mc_netid(msg, tipc_net_id);
+		bcl->stats.sent_info++;
 	}
 
 	/* Send buffer over bearers until all targets reached */