diff --git a/lnet/klnds/gmlnd/gmlnd.h b/lnet/klnds/gmlnd/gmlnd.h index be0f4044dd1f5c44de9b29bbf8476d9c6dc97afd..8373a73d57501185671208d2a85deec2f1cf5a6d 100644 --- a/lnet/klnds/gmlnd/gmlnd.h +++ b/lnet/klnds/gmlnd/gmlnd.h @@ -145,7 +145,8 @@ typedef struct gmnal_tx { struct iovec *iov; /* mapped frags */ lnet_kiov_t *kiov; /* page frags */ } tx_large_frags; - unsigned long tx_launchtime; /* when (in jiffies) the transmit was launched */ + cfs_time_t tx_launchtime; /* when (in jiffies) the + * transmit was launched */ struct gmnal_tx *tx_next; /* stash on gmni_txs */ } gmnal_tx_t; diff --git a/lnet/klnds/gmlnd/gmlnd_comm.c b/lnet/klnds/gmlnd/gmlnd_comm.c index 4a669064762a4dc2b9a8e4a50172a4af7f9bc747..cb03c0348e994e71792cb39d0531690dd6a885b4 100644 --- a/lnet/klnds/gmlnd/gmlnd_comm.c +++ b/lnet/klnds/gmlnd/gmlnd_comm.c @@ -29,12 +29,12 @@ void gmnal_notify_peer_down(gmnal_tx_t *tx) { - struct timeval now; time_t then; - do_gettimeofday (&now); - then = now.tv_sec - (jiffies - tx->tx_launchtime)/HZ; - + then = cfs_time_current_sec() - + cfs_duration_sec(cfs_time_current() - + tx->tx_launchtime); + lnet_notify(tx->tx_gmni->gmni_ni, tx->tx_nid, 0, then); } @@ -339,7 +339,7 @@ gmnal_check_txqueues_locked (gmnal_ni_t *gmni) LASSERT(!tx->tx_credit); tx->tx_credit = 1; - tx->tx_launchtime = jiffies; + tx->tx_launchtime = cfs_time_current(); if (tx->tx_msgnob <= gmni->gmni_small_msgsize) { LASSERT (tx->tx_ltxb == NULL); diff --git a/lnet/klnds/qswlnd/qswlnd.h b/lnet/klnds/qswlnd/qswlnd.h index ba08e16c6bf76979572b2d98fc01d330a278f405..bf3adc5c53d2e89b02187088b217eaf17f684978 100644 --- a/lnet/klnds/qswlnd/qswlnd.h +++ b/lnet/klnds/qswlnd/qswlnd.h @@ -205,7 +205,8 @@ typedef struct kqswnal_tx lnet_nid_t ktx_nid; /* destination node */ void *ktx_args[3]; /* completion passthru */ char *ktx_buffer; /* pre-allocated contiguous buffer for hdr + small payloads */ - unsigned long ktx_launchtime; /* when (in jiffies) the transmit was launched */ + cfs_time_t ktx_launchtime; /* when (in jiffies) the transmit + * was launched */ int ktx_status; /* completion status */ #if KQSW_CKSUM __u32 ktx_cksum; /* optimized GET payload checksum */ diff --git a/lnet/klnds/qswlnd/qswlnd_cb.c b/lnet/klnds/qswlnd/qswlnd_cb.c index eaa890e8c23ff21c2d6cb63b322ff2bdaff996ce..c509d10d603f17acec339361e8b33cb86a631f02 100644 --- a/lnet/klnds/qswlnd/qswlnd_cb.c +++ b/lnet/klnds/qswlnd/qswlnd_cb.c @@ -26,11 +26,11 @@ void kqswnal_notify_peer_down(kqswnal_tx_t *ktx) { - struct timeval now; time_t then; - do_gettimeofday (&now); - then = now.tv_sec - (jiffies - ktx->ktx_launchtime)/HZ; + then = cfs_time_current_sec() - + cfs_duration_sec(cfs_time_current() - + ktx->ktx_launchtime); lnet_notify(kqswnal_data.kqn_ni, ktx->ktx_nid, 0, then); } @@ -607,7 +607,7 @@ kqswnal_launch (kqswnal_tx_t *ktx) unsigned long flags; int rc; - ktx->ktx_launchtime = jiffies; + ktx->ktx_launchtime = cfs_time_current(); if (kqswnal_data.kqn_shuttingdown) return (-ESHUTDOWN); diff --git a/lnet/klnds/socklnd/socklnd.c b/lnet/klnds/socklnd/socklnd.c index fc105f32a8511f16582a9c966c3188ef1e72bdf6..00a260a2f50c72dabd2bb8364091fec3f9c49402 100644 --- a/lnet/klnds/socklnd/socklnd.c +++ b/lnet/klnds/socklnd/socklnd.c @@ -1464,7 +1464,9 @@ ksocknal_peer_failed (ksock_peer_t *peer) peer->ksnp_accepting == 0 && ksocknal_find_connecting_route_locked(peer) == NULL) { notify = 1; - last_alive = cfs_time_seconds(peer->ksnp_last_alive); + last_alive = cfs_time_current_sec() - + cfs_duration_sec(cfs_time_current() - + peer->ksnp_last_alive); } read_unlock (&ksocknal_data.ksnd_global_lock);