Increment the per NI stats for messages being routed.
This will give a better view of the traffic distribution
over multiple peer interfaces.
Added extra trace messages to track the messages
sent and received.
Test-Parameters: trivial
Signed-off-by: Amir Shehata <amir.shehata@intel.com>
Change-Id: I213b1b36e9787d25705d91d091ad9e9c6a5b2ae8
Reviewed-on: https://review.whamcloud.com/26907
Tested-by: Jenkins
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Sonia Sharma <sonia.sharma@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
rc = lnet_post_send_locked(msg, 0);
rc = lnet_post_send_locked(msg, 0);
+ if (!rc)
+ CDEBUG(D_NET, "TRACE: %s(%s:%s) -> %s(%s:%s) : %s\n",
+ libcfs_nid2str(msg->msg_hdr.src_nid),
+ libcfs_nid2str(msg->msg_txni->ni_nid),
+ libcfs_nid2str(src_nid),
+ libcfs_nid2str(msg->msg_hdr.dest_nid),
+ libcfs_nid2str(dst_nid),
+ libcfs_nid2str(msg->msg_txpeer->lpni_nid),
+ lnet_msgtyp2str(msg->msg_type));
+
lnet_net_unlock(cpt);
return rc;
lnet_net_unlock(cpt);
return rc;
for_me = (ni->ni_nid == dest_nid);
cpt = lnet_cpt_of_nid(from_nid, ni);
for_me = (ni->ni_nid == dest_nid);
cpt = lnet_cpt_of_nid(from_nid, ni);
+ CDEBUG(D_NET, "TRACE: %s(%s) <- %s : %s\n",
+ libcfs_nid2str(dest_nid),
+ libcfs_nid2str(ni->ni_nid),
+ libcfs_nid2str(src_nid),
+ lnet_msgtyp2str(type));
+
switch (type) {
case LNET_MSG_ACK:
case LNET_MSG_GET:
switch (type) {
case LNET_MSG_ACK:
case LNET_MSG_GET:
counters->route_length += msg->msg_len;
counters->route_count++;
counters->route_length += msg->msg_len;
counters->route_count++;
case LNET_EVENT_PUT:
/* should have been decommitted */
case LNET_EVENT_PUT:
/* should have been decommitted */
}
counters->send_count++;
}
counters->send_count++;
if (msg->msg_txpeer)
atomic_inc(&msg->msg_txpeer->lpni_stats.send_count);
if (msg->msg_txni)
if (msg->msg_txpeer)
atomic_inc(&msg->msg_txpeer->lpni_stats.send_count);
if (msg->msg_txni)
default:
LASSERT(ev->type == 0);
LASSERT(msg->msg_routing);
default:
LASSERT(ev->type == 0);
LASSERT(msg->msg_routing);
case LNET_EVENT_ACK:
LASSERT(msg->msg_type == LNET_MSG_ACK);
case LNET_EVENT_ACK:
LASSERT(msg->msg_type == LNET_MSG_ACK);
}
counters->recv_count++;
}
counters->recv_count++;
if (msg->msg_rxpeer)
atomic_inc(&msg->msg_rxpeer->lpni_stats.recv_count);
if (msg->msg_rxni)
if (msg->msg_rxpeer)
atomic_inc(&msg->msg_rxpeer->lpni_stats.recv_count);
if (msg->msg_rxni)