Whamcloud - gitweb
LU-7734 lnet: Add peer_ni and NI stats for DLC
[fs/lustre-release.git] / lnet / include / lnet / lib-types.h
index 84b1064..77b3564 100644 (file)
@@ -292,6 +292,12 @@ enum lnet_ni_state {
        LNET_NI_STATE_DELETING
 };
 
+struct lnet_element_stats {
+       atomic_t        send_count;
+       atomic_t        recv_count;
+       atomic_t        drop_count;
+};
+
 struct lnet_net {
        /* chain on the ln_nets */
        struct list_head        net_list;
@@ -381,6 +387,9 @@ typedef struct lnet_ni {
        /* lnd tunables set explicitly */
        bool ni_lnd_tunables_set;
 
+       /* NI statistics */
+       struct lnet_element_stats ni_stats;
+
        /* physical device CPT */
        int                     dev_cpt;
 
@@ -427,7 +436,7 @@ typedef struct {
 } lnet_rc_data_t;
 
 struct lnet_peer_ni {
-       /* cahian on peer_net */
+       /* chain on peer_net */
        struct list_head        lpni_on_peer_net_list;
        /* chain on remote peer list */
        struct list_head        lpni_on_remote_peer_ni_list;
@@ -441,6 +450,8 @@ struct lnet_peer_ni {
        struct list_head        lpni_rtr_list;
        /* pointer to peer net I'm part of */
        struct lnet_peer_net    *lpni_peer_net;
+       /* statistics kept on each peer NI */
+       struct lnet_element_stats lpni_stats;
        /* # tx credits available */
        int                     lpni_txcredits;
        /* low water mark */