lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.21.1801171528180.11282@casper.infradead.org>
Date:   Wed, 17 Jan 2018 15:29:23 +0000 (GMT)
From:   James Simmons <jsimmons@...radead.org>
To:     NeilBrown <neilb@...e.com>
cc:     Oleg Drokin <oleg.drokin@...el.com>,
        Andreas Dilger <andreas.dilger@...el.com>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        lkml <linux-kernel@...r.kernel.org>,
        lustre <lustre-devel@...ts.lustre.org>
Subject: Re: [PATCH 04/19] staging: lustre: discard cfs_time_seconds()


> cfs_time_seconds() converts a number of seconds to the
> matching number of jiffies.
> The standard way to do this in Linux is  "* HZ".
> So discard cfs_time_seconds() and use "* HZ" instead.

This doesn't collide as bad as I thought it did. Also it builds
now that the lnet seltest changes landed.

Reviewed-by: James Simmons <jsimmons@...radead.org>
 
> Signed-off-by: NeilBrown <neilb@...e.com>
> ---
>  .../lustre/include/linux/libcfs/libcfs_debug.h     |    4 ++--
>  .../lustre/include/linux/libcfs/libcfs_time.h      |    2 +-
>  .../lustre/include/linux/libcfs/linux/linux-time.h |    7 +-----
>  .../staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c    |    8 ++++---
>  .../staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c |    4 ++--
>  .../staging/lustre/lnet/klnds/socklnd/socklnd.c    |    6 +++--
>  .../staging/lustre/lnet/klnds/socklnd/socklnd_cb.c |   22 ++++++++++----------
>  drivers/staging/lustre/lnet/libcfs/debug.c         |    2 +-
>  drivers/staging/lustre/lnet/libcfs/fail.c          |    2 +-
>  drivers/staging/lustre/lnet/libcfs/tracefile.c     |    4 ++--
>  drivers/staging/lustre/lnet/lnet/acceptor.c        |    2 +-
>  drivers/staging/lustre/lnet/lnet/api-ni.c          |    4 ++--
>  drivers/staging/lustre/lnet/lnet/lib-move.c        |    4 ++--
>  drivers/staging/lustre/lnet/lnet/net_fault.c       |   14 +++++--------
>  drivers/staging/lustre/lnet/lnet/peer.c            |    2 +-
>  drivers/staging/lustre/lnet/lnet/router.c          |    8 ++++---
>  drivers/staging/lustre/lnet/selftest/conrpc.c      |    4 ++--
>  drivers/staging/lustre/lnet/selftest/rpc.c         |    2 +-
>  drivers/staging/lustre/lnet/selftest/selftest.h    |    2 +-
>  drivers/staging/lustre/lnet/selftest/timer.c       |    2 +-
>  drivers/staging/lustre/lustre/include/lustre_dlm.h |    2 +-
>  drivers/staging/lustre/lustre/include/lustre_mdc.h |    2 +-
>  drivers/staging/lustre/lustre/include/lustre_net.h |    2 +-
>  drivers/staging/lustre/lustre/ldlm/ldlm_lock.c     |    2 +-
>  drivers/staging/lustre/lustre/ldlm/ldlm_lockd.c    |    4 ++--
>  drivers/staging/lustre/lustre/ldlm/ldlm_pool.c     |    2 +-
>  drivers/staging/lustre/lustre/ldlm/ldlm_request.c  |    2 +-
>  drivers/staging/lustre/lustre/ldlm/ldlm_resource.c |    2 +-
>  drivers/staging/lustre/lustre/llite/llite_lib.c    |    4 ++--
>  drivers/staging/lustre/lustre/llite/statahead.c    |    2 +-
>  drivers/staging/lustre/lustre/lov/lov_request.c    |    4 ++--
>  drivers/staging/lustre/lustre/mdc/mdc_request.c    |    2 +-
>  drivers/staging/lustre/lustre/mgc/mgc_request.c    |    2 +-
>  drivers/staging/lustre/lustre/obdclass/cl_io.c     |    2 +-
>  .../staging/lustre/lustre/obdecho/echo_client.c    |    2 +-
>  drivers/staging/lustre/lustre/osc/osc_cache.c      |    4 ++--
>  drivers/staging/lustre/lustre/osc/osc_object.c     |    2 +-
>  drivers/staging/lustre/lustre/ptlrpc/client.c      |   10 +++++----
>  drivers/staging/lustre/lustre/ptlrpc/events.c      |    2 +-
>  drivers/staging/lustre/lustre/ptlrpc/import.c      |   15 ++++++--------
>  drivers/staging/lustre/lustre/ptlrpc/niobuf.c      |    4 ++--
>  .../staging/lustre/lustre/ptlrpc/pack_generic.c    |    2 +-
>  drivers/staging/lustre/lustre/ptlrpc/pinger.c      |    8 ++++---
>  drivers/staging/lustre/lustre/ptlrpc/ptlrpcd.c     |    4 ++--
>  drivers/staging/lustre/lustre/ptlrpc/recover.c     |    2 +-
>  drivers/staging/lustre/lustre/ptlrpc/service.c     |    8 ++++---
>  46 files changed, 96 insertions(+), 106 deletions(-)
> 
> diff --git a/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h b/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h
> index 1b98f0953afb..9290a19429e7 100644
> --- a/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h
> +++ b/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h
> @@ -66,8 +66,8 @@ extern unsigned int libcfs_panic_on_lbug;
>  # define DEBUG_SUBSYSTEM S_UNDEFINED
>  #endif
>  
> -#define CDEBUG_DEFAULT_MAX_DELAY (cfs_time_seconds(600))	 /* jiffies */
> -#define CDEBUG_DEFAULT_MIN_DELAY ((cfs_time_seconds(1) + 1) / 2) /* jiffies */
> +#define CDEBUG_DEFAULT_MAX_DELAY (600 * HZ)	 /* jiffies */
> +#define CDEBUG_DEFAULT_MIN_DELAY ((HZ + 1) / 2) /* jiffies */
>  #define CDEBUG_DEFAULT_BACKOFF   2
>  struct cfs_debug_limit_state {
>  	unsigned long   cdls_next;
> diff --git a/drivers/staging/lustre/include/linux/libcfs/libcfs_time.h b/drivers/staging/lustre/include/linux/libcfs/libcfs_time.h
> index 9699646decb9..c4f25be78268 100644
> --- a/drivers/staging/lustre/include/linux/libcfs/libcfs_time.h
> +++ b/drivers/staging/lustre/include/linux/libcfs/libcfs_time.h
> @@ -62,7 +62,7 @@ static inline int cfs_time_aftereq(unsigned long t1, unsigned long t2)
>  
>  static inline unsigned long cfs_time_shift(int seconds)
>  {
> -	return cfs_time_add(cfs_time_current(), cfs_time_seconds(seconds));
> +	return cfs_time_add(cfs_time_current(), seconds * HZ);
>  }
>  
>  /*
> diff --git a/drivers/staging/lustre/include/linux/libcfs/linux/linux-time.h b/drivers/staging/lustre/include/linux/libcfs/linux/linux-time.h
> index aece13698eb4..805cb326af86 100644
> --- a/drivers/staging/lustre/include/linux/libcfs/linux/linux-time.h
> +++ b/drivers/staging/lustre/include/linux/libcfs/linux/linux-time.h
> @@ -65,11 +65,6 @@ static inline unsigned long cfs_time_current(void)
>  	return jiffies;
>  }
>  
> -static inline long cfs_time_seconds(int seconds)
> -{
> -	return ((long)seconds) * msecs_to_jiffies(MSEC_PER_SEC);
> -}
> -
>  static inline long cfs_duration_sec(long d)
>  {
>  	return d / msecs_to_jiffies(MSEC_PER_SEC);
> @@ -85,7 +80,7 @@ static inline u64 cfs_time_add_64(u64 t, u64 d)
>  static inline u64 cfs_time_shift_64(int seconds)
>  {
>  	return cfs_time_add_64(cfs_time_current_64(),
> -			       cfs_time_seconds(seconds));
> +			       seconds * HZ);
>  }
>  
>  static inline int cfs_time_before_64(u64 t1, u64 t2)
> diff --git a/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c b/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c
> index bb7b19473e3a..8a49f7730308 100644
> --- a/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c
> +++ b/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c
> @@ -1219,7 +1219,7 @@ static struct kib_hca_dev *kiblnd_current_hdev(struct kib_dev *dev)
>  			CDEBUG(D_NET, "%s: Wait for failover\n",
>  			       dev->ibd_ifname);
>  		set_current_state(TASK_INTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1) / 100);
> +		schedule_timeout(HZ / 100);
>  
>  		read_lock_irqsave(&kiblnd_data.kib_global_lock, flags);
>  	}
> @@ -1930,7 +1930,7 @@ struct list_head *kiblnd_pool_alloc_node(struct kib_poolset *ps)
>  
>  		set_current_state(TASK_INTERRUPTIBLE);
>  		schedule_timeout(interval);
> -		if (interval < cfs_time_seconds(1))
> +		if (interval < HZ)
>  			interval *= 2;
>  
>  		goto again;
> @@ -2567,7 +2567,7 @@ static void kiblnd_base_shutdown(void)
>  			       "Waiting for %d threads to terminate\n",
>  			       atomic_read(&kiblnd_data.kib_nthreads));
>  			set_current_state(TASK_UNINTERRUPTIBLE);
> -			schedule_timeout(cfs_time_seconds(1));
> +			schedule_timeout(HZ);
>  		}
>  
>  		/* fall through */
> @@ -2618,7 +2618,7 @@ static void kiblnd_shutdown(struct lnet_ni *ni)
>  			       libcfs_nid2str(ni->ni_nid),
>  			       atomic_read(&net->ibn_npeers));
>  			set_current_state(TASK_UNINTERRUPTIBLE);
> -			schedule_timeout(cfs_time_seconds(1));
> +			schedule_timeout(HZ);
>  		}
>  
>  		kiblnd_net_fini_pools(net);
> diff --git a/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c b/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c
> index 9b3328c5d1e7..0b30c205e760 100644
> --- a/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c
> +++ b/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c
> @@ -3726,8 +3726,8 @@ kiblnd_failover_thread(void *arg)
>  		add_wait_queue(&kiblnd_data.kib_failover_waitq, &wait);
>  		write_unlock_irqrestore(glock, flags);
>  
> -		rc = schedule_timeout(long_sleep ? cfs_time_seconds(10) :
> -						   cfs_time_seconds(1));
> +		rc = schedule_timeout(long_sleep ? 10 * HZ :
> +						   HZ);
>  		remove_wait_queue(&kiblnd_data.kib_failover_waitq, &wait);
>  		write_lock_irqsave(glock, flags);
>  
> diff --git a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.c b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.c
> index 7dba949a95a7..6ab876d8c744 100644
> --- a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.c
> +++ b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.c
> @@ -1677,7 +1677,7 @@ ksocknal_destroy_conn(struct ksock_conn *conn)
>  	switch (conn->ksnc_rx_state) {
>  	case SOCKNAL_RX_LNET_PAYLOAD:
>  		last_rcv = conn->ksnc_rx_deadline -
> -			   cfs_time_seconds(*ksocknal_tunables.ksnd_timeout);
> +			   *ksocknal_tunables.ksnd_timeout * HZ;
>  		CERROR("Completing partial receive from %s[%d], ip %pI4h:%d, with error, wanted: %zd, left: %d, last alive is %ld secs ago\n",
>  		       libcfs_id2str(conn->ksnc_peer->ksnp_id), conn->ksnc_type,
>  		       &conn->ksnc_ipaddr, conn->ksnc_port,
> @@ -2361,7 +2361,7 @@ ksocknal_base_shutdown(void)
>  				ksocknal_data.ksnd_nthreads);
>  			read_unlock(&ksocknal_data.ksnd_global_lock);
>  			set_current_state(TASK_UNINTERRUPTIBLE);
> -			schedule_timeout(cfs_time_seconds(1));
> +			schedule_timeout(HZ);
>  			read_lock(&ksocknal_data.ksnd_global_lock);
>  		}
>  		read_unlock(&ksocknal_data.ksnd_global_lock);
> @@ -2604,7 +2604,7 @@ ksocknal_shutdown(struct lnet_ni *ni)
>  		       "waiting for %d peers to disconnect\n",
>  		       net->ksnn_npeers);
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1));
> +		schedule_timeout(HZ);
>  
>  		ksocknal_debug_peerhash(ni);
>  
> diff --git a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c
> index 11fd3a36424f..63e452f666bf 100644
> --- a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c
> +++ b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c
> @@ -189,7 +189,7 @@ ksocknal_transmit(struct ksock_conn *conn, struct ksock_tx *tx)
>  
>  	if (ksocknal_data.ksnd_stall_tx) {
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(ksocknal_data.ksnd_stall_tx));
> +		schedule_timeout(ksocknal_data.ksnd_stall_tx * HZ);
>  	}
>  
>  	LASSERT(tx->tx_resid);
> @@ -294,7 +294,7 @@ ksocknal_receive(struct ksock_conn *conn)
>  
>  	if (ksocknal_data.ksnd_stall_rx) {
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(ksocknal_data.ksnd_stall_rx));
> +		schedule_timeout(ksocknal_data.ksnd_stall_rx * HZ);
>  	}
>  
>  	rc = ksocknal_connsock_addref(conn);
> @@ -1780,7 +1780,7 @@ ksocknal_connect(struct ksock_route *route)
>  	int rc = 0;
>  
>  	deadline = cfs_time_add(cfs_time_current(),
> -				cfs_time_seconds(*ksocknal_tunables.ksnd_timeout));
> +				*ksocknal_tunables.ksnd_timeout * HZ);
>  
>  	write_lock_bh(&ksocknal_data.ksnd_global_lock);
>  
> @@ -1878,7 +1878,7 @@ ksocknal_connect(struct ksock_route *route)
>  			 * so min_reconnectms should be good heuristic
>  			 */
>  			route->ksnr_retry_interval =
> -				cfs_time_seconds(*ksocknal_tunables.ksnd_min_reconnectms) / 1000;
> +				*ksocknal_tunables.ksnd_min_reconnectms * HZ / 1000;
>  			route->ksnr_timeout = cfs_time_add(cfs_time_current(),
>  							   route->ksnr_retry_interval);
>  		}
> @@ -1899,10 +1899,10 @@ ksocknal_connect(struct ksock_route *route)
>  	route->ksnr_retry_interval *= 2;
>  	route->ksnr_retry_interval =
>  		max(route->ksnr_retry_interval,
> -		    cfs_time_seconds(*ksocknal_tunables.ksnd_min_reconnectms) / 1000);
> +		    (long)*ksocknal_tunables.ksnd_min_reconnectms * HZ / 1000);
>  	route->ksnr_retry_interval =
>  		min(route->ksnr_retry_interval,
> -		    cfs_time_seconds(*ksocknal_tunables.ksnd_max_reconnectms) / 1000);
> +		    (long)*ksocknal_tunables.ksnd_max_reconnectms * HZ / 1000);
>  
>  	LASSERT(route->ksnr_retry_interval);
>  	route->ksnr_timeout = cfs_time_add(cfs_time_current(),
> @@ -1972,7 +1972,7 @@ ksocknal_connd_check_start(time64_t sec, long *timeout)
>  
>  	if (sec - ksocknal_data.ksnd_connd_failed_stamp <= 1) {
>  		/* may run out of resource, retry later */
> -		*timeout = cfs_time_seconds(1);
> +		*timeout = HZ;
>  		return 0;
>  	}
>  
> @@ -2031,8 +2031,8 @@ ksocknal_connd_check_stop(time64_t sec, long *timeout)
>  	val = (int)(ksocknal_data.ksnd_connd_starting_stamp +
>  		    SOCKNAL_CONND_TIMEOUT - sec);
>  
> -	*timeout = (val > 0) ? cfs_time_seconds(val) :
> -			       cfs_time_seconds(SOCKNAL_CONND_TIMEOUT);
> +	*timeout = (val > 0) ? val * HZ :
> +			       SOCKNAL_CONND_TIMEOUT * HZ;
>  	if (val > 0)
>  		return 0;
>  
> @@ -2307,7 +2307,7 @@ ksocknal_send_keepalive_locked(struct ksock_peer *peer)
>  	if (*ksocknal_tunables.ksnd_keepalive <= 0 ||
>  	    time_before(cfs_time_current(),
>  			cfs_time_add(peer->ksnp_last_alive,
> -				     cfs_time_seconds(*ksocknal_tunables.ksnd_keepalive))))
> +				     *ksocknal_tunables.ksnd_keepalive * HZ)))
>  		return 0;
>  
>  	if (time_before(cfs_time_current(), peer->ksnp_send_keepalive))
> @@ -2563,7 +2563,7 @@ ksocknal_reaper(void *arg)
>  					     ksocknal_data.ksnd_peer_hash_size;
>  			}
>  
> -			deadline = cfs_time_add(deadline, cfs_time_seconds(p));
> +			deadline = cfs_time_add(deadline, p * HZ);
>  		}
>  
>  		if (nenomem_conns) {
> diff --git a/drivers/staging/lustre/lnet/libcfs/debug.c b/drivers/staging/lustre/lnet/libcfs/debug.c
> index 551c45bf4108..c70d2ae29b11 100644
> --- a/drivers/staging/lustre/lnet/libcfs/debug.c
> +++ b/drivers/staging/lustre/lnet/libcfs/debug.c
> @@ -113,7 +113,7 @@ static int param_set_delay_minmax(const char *val,
>  	if (rc)
>  		return -EINVAL;
>  
> -	d = cfs_time_seconds(sec) / 100;
> +	d = sec * HZ / 100;
>  	if (d < min || d > max)
>  		return -EINVAL;
>  
> diff --git a/drivers/staging/lustre/lnet/libcfs/fail.c b/drivers/staging/lustre/lnet/libcfs/fail.c
> index 39439b303d65..d3f1e866c6a7 100644
> --- a/drivers/staging/lustre/lnet/libcfs/fail.c
> +++ b/drivers/staging/lustre/lnet/libcfs/fail.c
> @@ -134,7 +134,7 @@ int __cfs_fail_timeout_set(u32 id, u32 value, int ms, int set)
>  		CERROR("cfs_fail_timeout id %x sleeping for %dms\n",
>  		       id, ms);
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(ms) / 1000);
> +		schedule_timeout(ms * HZ / 1000);
>  		CERROR("cfs_fail_timeout id %x awake\n", id);
>  	}
>  	return ret;
> diff --git a/drivers/staging/lustre/lnet/libcfs/tracefile.c b/drivers/staging/lustre/lnet/libcfs/tracefile.c
> index da2844f37edf..8c33c8fa66e2 100644
> --- a/drivers/staging/lustre/lnet/libcfs/tracefile.c
> +++ b/drivers/staging/lustre/lnet/libcfs/tracefile.c
> @@ -441,7 +441,7 @@ int libcfs_debug_vmsg2(struct libcfs_debug_msg_data *msgdata,
>  
>  		if (cfs_time_after(cfs_time_current(),
>  				   cdls->cdls_next + libcfs_console_max_delay +
> -				   cfs_time_seconds(10))) {
> +				   10 * HZ)) {
>  			/* last timeout was a long time ago */
>  			cdls->cdls_delay /= libcfs_console_backoff * 4;
>  		} else {
> @@ -1071,7 +1071,7 @@ static int tracefiled(void *arg)
>  		init_waitqueue_entry(&__wait, current);
>  		add_wait_queue(&tctl->tctl_waitq, &__wait);
>  		set_current_state(TASK_INTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1));
> +		schedule_timeout(HZ);
>  		remove_wait_queue(&tctl->tctl_waitq, &__wait);
>  	}
>  	complete(&tctl->tctl_stop);
> diff --git a/drivers/staging/lustre/lnet/lnet/acceptor.c b/drivers/staging/lustre/lnet/lnet/acceptor.c
> index ee85cab6f437..6c1f4941d4ba 100644
> --- a/drivers/staging/lustre/lnet/lnet/acceptor.c
> +++ b/drivers/staging/lustre/lnet/lnet/acceptor.c
> @@ -365,7 +365,7 @@ lnet_acceptor(void *arg)
>  			if (rc != -EAGAIN) {
>  				CWARN("Accept error %d: pausing...\n", rc);
>  				set_current_state(TASK_UNINTERRUPTIBLE);
> -				schedule_timeout(cfs_time_seconds(1));
> +				schedule_timeout(HZ);
>  			}
>  			continue;
>  		}
> diff --git a/drivers/staging/lustre/lnet/lnet/api-ni.c b/drivers/staging/lustre/lnet/lnet/api-ni.c
> index 6a1fb0397604..ddd37eae63c6 100644
> --- a/drivers/staging/lustre/lnet/lnet/api-ni.c
> +++ b/drivers/staging/lustre/lnet/lnet/api-ni.c
> @@ -973,7 +973,7 @@ lnet_ping_md_unlink(struct lnet_ping_info *pinfo,
>  	while (pinfo->pi_features != LNET_PING_FEAT_INVAL) {
>  		CDEBUG(D_NET, "Still waiting for ping MD to unlink\n");
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1));
> +		schedule_timeout(HZ);
>  	}
>  
>  	cfs_restore_sigs(blocked);
> @@ -1112,7 +1112,7 @@ lnet_clear_zombies_nis_locked(void)
>  				       libcfs_nid2str(ni->ni_nid));
>  			}
>  			set_current_state(TASK_UNINTERRUPTIBLE);
> -			schedule_timeout(cfs_time_seconds(1));
> +			schedule_timeout(HZ);
>  			lnet_net_lock(LNET_LOCK_EX);
>  			continue;
>  		}
> diff --git a/drivers/staging/lustre/lnet/lnet/lib-move.c b/drivers/staging/lustre/lnet/lnet/lib-move.c
> index d724c4c73ecc..7fe7ae917273 100644
> --- a/drivers/staging/lustre/lnet/lnet/lib-move.c
> +++ b/drivers/staging/lustre/lnet/lnet/lib-move.c
> @@ -524,7 +524,7 @@ lnet_peer_is_alive(struct lnet_peer *lp, unsigned long now)
>  		return 0;
>  
>  	deadline = cfs_time_add(lp->lp_last_alive,
> -				cfs_time_seconds(lp->lp_ni->ni_peertimeout));
> +				lp->lp_ni->ni_peertimeout * HZ);
>  	alive = cfs_time_after(deadline, now);
>  
>  	/* Update obsolete lp_alive except for routers assumed to be dead
> @@ -562,7 +562,7 @@ lnet_peer_alive_locked(struct lnet_peer *lp)
>  
>  		unsigned long next_query =
>  			   cfs_time_add(lp->lp_last_query,
> -					cfs_time_seconds(lnet_queryinterval));
> +					lnet_queryinterval * HZ);
>  
>  		if (time_before(now, next_query)) {
>  			if (lp->lp_alive)
> diff --git a/drivers/staging/lustre/lnet/lnet/net_fault.c b/drivers/staging/lustre/lnet/lnet/net_fault.c
> index e3468cef273b..a63b7941d435 100644
> --- a/drivers/staging/lustre/lnet/lnet/net_fault.c
> +++ b/drivers/staging/lustre/lnet/lnet/net_fault.c
> @@ -315,9 +315,8 @@ drop_rule_match(struct lnet_drop_rule *rule, lnet_nid_t src,
>  				rule->dr_time_base = now;
>  
>  			rule->dr_drop_time = rule->dr_time_base +
> -				cfs_time_seconds(
> -					prandom_u32_max(attr->u.drop.da_interval));
> -			rule->dr_time_base += cfs_time_seconds(attr->u.drop.da_interval);
> +				prandom_u32_max(attr->u.drop.da_interval) * HZ;
> +			rule->dr_time_base += attr->u.drop.da_interval * HZ;
>  
>  			CDEBUG(D_NET, "Drop Rule %s->%s: next drop : %lu\n",
>  			       libcfs_nid2str(attr->fa_src),
> @@ -440,8 +439,7 @@ static struct delay_daemon_data	delay_dd;
>  static unsigned long
>  round_timeout(unsigned long timeout)
>  {
> -	return cfs_time_seconds((unsigned int)
> -			cfs_duration_sec(cfs_time_sub(timeout, 0)) + 1);
> +	return (unsigned int)rounddown(timeout, HZ) + HZ;
>  }
>  
>  static void
> @@ -483,10 +481,8 @@ delay_rule_match(struct lnet_delay_rule *rule, lnet_nid_t src,
>  				rule->dl_time_base = now;
>  
>  			rule->dl_delay_time = rule->dl_time_base +
> -				cfs_time_seconds(
> -					prandom_u32_max(
> -						attr->u.delay.la_interval));
> -			rule->dl_time_base += cfs_time_seconds(attr->u.delay.la_interval);
> +				prandom_u32_max(attr->u.delay.la_interval) * HZ;
> +			rule->dl_time_base += attr->u.delay.la_interval * HZ;
>  
>  			CDEBUG(D_NET, "Delay Rule %s->%s: next delay : %lu\n",
>  			       libcfs_nid2str(attr->fa_src),
> diff --git a/drivers/staging/lustre/lnet/lnet/peer.c b/drivers/staging/lustre/lnet/lnet/peer.c
> index 19fcbcf0f642..89610f768b4f 100644
> --- a/drivers/staging/lustre/lnet/lnet/peer.c
> +++ b/drivers/staging/lustre/lnet/lnet/peer.c
> @@ -137,7 +137,7 @@ lnet_peer_table_deathrow_wait_locked(struct lnet_peer_table *ptable,
>  			       ptable->pt_zombies);
>  		}
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1) >> 1);
> +		schedule_timeout(HZ >> 1);
>  		lnet_net_lock(cpt_locked);
>  	}
>  }
> diff --git a/drivers/staging/lustre/lnet/lnet/router.c b/drivers/staging/lustre/lnet/lnet/router.c
> index 476d6d296037..47a98d50ebc7 100644
> --- a/drivers/staging/lustre/lnet/lnet/router.c
> +++ b/drivers/staging/lustre/lnet/lnet/router.c
> @@ -808,7 +808,7 @@ lnet_wait_known_routerstate(void)
>  			return;
>  
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1));
> +		schedule_timeout(HZ);
>  	}
>  }
>  
> @@ -1011,7 +1011,7 @@ lnet_ping_router_locked(struct lnet_peer *rtr)
>  
>  	if (secs && !rtr->lp_ping_notsent &&
>  	    cfs_time_after(now, cfs_time_add(rtr->lp_ping_timestamp,
> -					     cfs_time_seconds(secs)))) {
> +					     secs * HZ))) {
>  		int rc;
>  		struct lnet_process_id id;
>  		struct lnet_handle_md mdh;
> @@ -1185,7 +1185,7 @@ lnet_prune_rc_data(int wait_unlink)
>  		CDEBUG(((i & (-i)) == i) ? D_WARNING : D_NET,
>  		       "Waiting for rc buffers to unlink\n");
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1) / 4);
> +		schedule_timeout(HZ / 4);
>  
>  		lnet_net_lock(LNET_LOCK_EX);
>  	}
> @@ -1282,7 +1282,7 @@ lnet_router_checker(void *arg)
>  		else
>  			wait_event_interruptible_timeout(the_lnet.ln_rc_waitq,
>  							 false,
> -							 cfs_time_seconds(1));
> +							 HZ);
>  	}
>  
>  	lnet_prune_rc_data(1); /* wait for UNLINK */
> diff --git a/drivers/staging/lustre/lnet/selftest/conrpc.c b/drivers/staging/lustre/lnet/selftest/conrpc.c
> index 7aa515c34594..6dcc966b293b 100644
> --- a/drivers/staging/lustre/lnet/selftest/conrpc.c
> +++ b/drivers/staging/lustre/lnet/selftest/conrpc.c
> @@ -359,7 +359,7 @@ lstcon_rpc_trans_postwait(struct lstcon_rpc_trans *trans, int timeout)
>  
>  	rc = wait_event_interruptible_timeout(trans->tas_waitq,
>  					      lstcon_rpc_trans_check(trans),
> -					      cfs_time_seconds(timeout));
> +					      timeout * HZ);
>  	rc = (rc > 0) ? 0 : ((rc < 0) ? -EINTR : -ETIMEDOUT);
>  
>  	mutex_lock(&console_session.ses_mutex);
> @@ -1350,7 +1350,7 @@ lstcon_rpc_cleanup_wait(void)
>  
>  		CWARN("Session is shutting down, waiting for termination of transactions\n");
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1));
> +		schedule_timeout(HZ);
>  
>  		mutex_lock(&console_session.ses_mutex);
>  	}
> diff --git a/drivers/staging/lustre/lnet/selftest/rpc.c b/drivers/staging/lustre/lnet/selftest/rpc.c
> index b515138dca2c..18e0f1b87fc1 100644
> --- a/drivers/staging/lustre/lnet/selftest/rpc.c
> +++ b/drivers/staging/lustre/lnet/selftest/rpc.c
> @@ -1605,7 +1605,7 @@ srpc_startup(void)
>  
>  	/* 1 second pause to avoid timestamp reuse */
>  	set_current_state(TASK_UNINTERRUPTIBLE);
> -	schedule_timeout(cfs_time_seconds(1));
> +	schedule_timeout(HZ);
>  	srpc_data.rpc_matchbits = ((__u64)ktime_get_real_seconds()) << 48;
>  
>  	srpc_data.rpc_state = SRPC_STATE_NONE;
> diff --git a/drivers/staging/lustre/lnet/selftest/selftest.h b/drivers/staging/lustre/lnet/selftest/selftest.h
> index ad04534f000c..05466b85e1c0 100644
> --- a/drivers/staging/lustre/lnet/selftest/selftest.h
> +++ b/drivers/staging/lustre/lnet/selftest/selftest.h
> @@ -575,7 +575,7 @@ swi_state2str(int state)
>  #define selftest_wait_events()					\
>  	do {							\
>  		set_current_state(TASK_UNINTERRUPTIBLE);	\
> -		schedule_timeout(cfs_time_seconds(1) / 10);	\
> +		schedule_timeout(HZ / 10);	\
>  	} while (0)
>  
>  #define lst_wait_until(cond, lock, fmt, ...)				\
> diff --git a/drivers/staging/lustre/lnet/selftest/timer.c b/drivers/staging/lustre/lnet/selftest/timer.c
> index ab125a8524c5..9716afeb3c94 100644
> --- a/drivers/staging/lustre/lnet/selftest/timer.c
> +++ b/drivers/staging/lustre/lnet/selftest/timer.c
> @@ -177,7 +177,7 @@ stt_timer_main(void *arg)
>  
>  		rc = wait_event_timeout(stt_data.stt_waitq,
>  					stt_data.stt_shuttingdown,
> -					cfs_time_seconds(STTIMER_SLOTTIME));
> +					STTIMER_SLOTTIME * HZ);
>  	}
>  
>  	spin_lock(&stt_data.stt_lock);
> diff --git a/drivers/staging/lustre/lustre/include/lustre_dlm.h b/drivers/staging/lustre/lustre/include/lustre_dlm.h
> index e0b17052b2ea..239aa2b1268f 100644
> --- a/drivers/staging/lustre/lustre/include/lustre_dlm.h
> +++ b/drivers/staging/lustre/lustre/include/lustre_dlm.h
> @@ -60,7 +60,7 @@ struct obd_device;
>  #define OBD_LDLM_DEVICENAME  "ldlm"
>  
>  #define LDLM_DEFAULT_LRU_SIZE (100 * num_online_cpus())
> -#define LDLM_DEFAULT_MAX_ALIVE (cfs_time_seconds(3900)) /* 65 min */
> +#define LDLM_DEFAULT_MAX_ALIVE (65 * 60 * HZ) /* 65 min */
>  #define LDLM_DEFAULT_PARALLEL_AST_LIMIT 1024
>  
>  /**
> diff --git a/drivers/staging/lustre/lustre/include/lustre_mdc.h b/drivers/staging/lustre/lustre/include/lustre_mdc.h
> index 007e1ec3f0f4..a9c9992a2502 100644
> --- a/drivers/staging/lustre/lustre/include/lustre_mdc.h
> +++ b/drivers/staging/lustre/lustre/include/lustre_mdc.h
> @@ -124,7 +124,7 @@ static inline void mdc_get_rpc_lock(struct mdc_rpc_lock *lck,
>  	 */
>  	while (unlikely(lck->rpcl_it == MDC_FAKE_RPCL_IT)) {
>  		mutex_unlock(&lck->rpcl_mutex);
> -		schedule_timeout(cfs_time_seconds(1) / 4);
> +		schedule_timeout(HZ / 4);
>  		goto again;
>  	}
>  
> diff --git a/drivers/staging/lustre/lustre/include/lustre_net.h b/drivers/staging/lustre/lustre/include/lustre_net.h
> index 4c665eca2467..5a4434e7c85a 100644
> --- a/drivers/staging/lustre/lustre/include/lustre_net.h
> +++ b/drivers/staging/lustre/lustre/include/lustre_net.h
> @@ -2262,7 +2262,7 @@ static inline int ptlrpc_send_limit_expired(struct ptlrpc_request *req)
>  {
>  	if (req->rq_delay_limit != 0 &&
>  	    time_before(cfs_time_add(req->rq_queued_time,
> -				     cfs_time_seconds(req->rq_delay_limit)),
> +				     req->rq_delay_limit * HZ),
>  			cfs_time_current())) {
>  		return 1;
>  	}
> diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c b/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c
> index 4f700ddb47c6..773abe78708a 100644
> --- a/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c
> +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c
> @@ -1366,7 +1366,7 @@ enum ldlm_mode ldlm_lock_match(struct ldlm_namespace *ns, __u64 flags,
>  				}
>  			}
>  
> -			lwi = LWI_TIMEOUT_INTR(cfs_time_seconds(obd_timeout),
> +			lwi = LWI_TIMEOUT_INTR(obd_timeout * HZ,
>  					       NULL, LWI_ON_SIGNAL_NOOP, NULL);
>  
>  			/* XXX FIXME see comment on CAN_MATCH in lustre_dlm.h */
> diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_lockd.c b/drivers/staging/lustre/lustre/ldlm/ldlm_lockd.c
> index 6c7c4b19a0a0..58913e628124 100644
> --- a/drivers/staging/lustre/lustre/ldlm/ldlm_lockd.c
> +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_lockd.c
> @@ -163,7 +163,7 @@ static void ldlm_handle_cp_callback(struct ptlrpc_request *req,
>  	LDLM_DEBUG(lock, "client completion callback handler START");
>  
>  	if (OBD_FAIL_CHECK(OBD_FAIL_LDLM_CANCEL_BL_CB_RACE)) {
> -		int to = cfs_time_seconds(1);
> +		int to = HZ;
>  
>  		while (to > 0) {
>  			set_current_state(TASK_INTERRUPTIBLE);
> @@ -327,7 +327,7 @@ static void ldlm_handle_gl_callback(struct ptlrpc_request *req,
>  	    !lock->l_readers && !lock->l_writers &&
>  	    cfs_time_after(cfs_time_current(),
>  			   cfs_time_add(lock->l_last_used,
> -					cfs_time_seconds(10)))) {
> +					10 * HZ))) {
>  		unlock_res_and_lock(lock);
>  		if (ldlm_bl_to_thread_lock(ns, NULL, lock))
>  			ldlm_handle_bl_callback(ns, NULL, lock);
> diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_pool.c b/drivers/staging/lustre/lustre/ldlm/ldlm_pool.c
> index f27c2694793a..622245a5f049 100644
> --- a/drivers/staging/lustre/lustre/ldlm/ldlm_pool.c
> +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_pool.c
> @@ -1008,7 +1008,7 @@ static int ldlm_pools_thread_main(void *arg)
>  		 * Wait until the next check time, or until we're
>  		 * stopped.
>  		 */
> -		lwi = LWI_TIMEOUT(cfs_time_seconds(c_time),
> +		lwi = LWI_TIMEOUT(c_time * HZ,
>  				  NULL, NULL);
>  		l_wait_event(thread->t_ctl_waitq,
>  			     thread_is_stopping(thread) ||
> diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_request.c b/drivers/staging/lustre/lustre/ldlm/ldlm_request.c
> index 6aa37463db46..a244fa717134 100644
> --- a/drivers/staging/lustre/lustre/ldlm/ldlm_request.c
> +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_request.c
> @@ -288,7 +288,7 @@ int ldlm_completion_ast(struct ldlm_lock *lock, __u64 flags, void *data)
>  		LDLM_DEBUG(lock, "waiting indefinitely because of NO_TIMEOUT");
>  		lwi = LWI_INTR(interrupted_completion_wait, &lwd);
>  	} else {
> -		lwi = LWI_TIMEOUT_INTR(cfs_time_seconds(timeout),
> +		lwi = LWI_TIMEOUT_INTR(timeout * HZ,
>  				       ldlm_expired_completion_wait,
>  				       interrupted_completion_wait, &lwd);
>  	}
> diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_resource.c b/drivers/staging/lustre/lustre/ldlm/ldlm_resource.c
> index 9958533cc227..2e66825c8f4b 100644
> --- a/drivers/staging/lustre/lustre/ldlm/ldlm_resource.c
> +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_resource.c
> @@ -799,7 +799,7 @@ static void cleanup_resource(struct ldlm_resource *res, struct list_head *q,
>  			LDLM_DEBUG(lock, "setting FL_LOCAL_ONLY");
>  			if (lock->l_flags & LDLM_FL_FAIL_LOC) {
>  				set_current_state(TASK_UNINTERRUPTIBLE);
> -				schedule_timeout(cfs_time_seconds(4));
> +				schedule_timeout(4 * HZ);
>  				set_current_state(TASK_RUNNING);
>  			}
>  			if (lock->l_completion_ast)
> diff --git a/drivers/staging/lustre/lustre/llite/llite_lib.c b/drivers/staging/lustre/lustre/llite/llite_lib.c
> index 6735a6f006d2..0a9183f271f5 100644
> --- a/drivers/staging/lustre/lustre/llite/llite_lib.c
> +++ b/drivers/staging/lustre/lustre/llite/llite_lib.c
> @@ -2026,8 +2026,8 @@ void ll_umount_begin(struct super_block *sb)
>  	 * to decrement mnt_cnt and hope to finish it within 10sec.
>  	 */
>  	init_waitqueue_head(&waitq);
> -	lwi = LWI_TIMEOUT_INTERVAL(cfs_time_seconds(10),
> -				   cfs_time_seconds(1), NULL, NULL);
> +	lwi = LWI_TIMEOUT_INTERVAL(10 * HZ,
> +				   HZ, NULL, NULL);
>  	l_wait_event(waitq, may_umount(sbi->ll_mnt.mnt), &lwi);
>  
>  	schedule();
> diff --git a/drivers/staging/lustre/lustre/llite/statahead.c b/drivers/staging/lustre/lustre/llite/statahead.c
> index 78005cc6e831..96360f104b92 100644
> --- a/drivers/staging/lustre/lustre/llite/statahead.c
> +++ b/drivers/staging/lustre/lustre/llite/statahead.c
> @@ -1424,7 +1424,7 @@ static int revalidate_statahead_dentry(struct inode *dir,
>  		spin_lock(&lli->lli_sa_lock);
>  		sai->sai_index_wait = entry->se_index;
>  		spin_unlock(&lli->lli_sa_lock);
> -		lwi = LWI_TIMEOUT_INTR(cfs_time_seconds(30), NULL,
> +		lwi = LWI_TIMEOUT_INTR(30 * HZ, NULL,
>  				       LWI_ON_SIGNAL_NOOP, NULL);
>  		rc = l_wait_event(sai->sai_waitq, sa_ready(entry), &lwi);
>  		if (rc < 0) {
> diff --git a/drivers/staging/lustre/lustre/lov/lov_request.c b/drivers/staging/lustre/lustre/lov/lov_request.c
> index cfa1d7f92b0f..fb3b7a7fa32a 100644
> --- a/drivers/staging/lustre/lustre/lov/lov_request.c
> +++ b/drivers/staging/lustre/lustre/lov/lov_request.c
> @@ -126,8 +126,8 @@ static int lov_check_and_wait_active(struct lov_obd *lov, int ost_idx)
>  	mutex_unlock(&lov->lov_lock);
>  
>  	init_waitqueue_head(&waitq);
> -	lwi = LWI_TIMEOUT_INTERVAL(cfs_time_seconds(obd_timeout),
> -				   cfs_time_seconds(1), NULL, NULL);
> +	lwi = LWI_TIMEOUT_INTERVAL(obd_timeout * HZ,
> +				   HZ, NULL, NULL);
>  
>  	rc = l_wait_event(waitq, lov_check_set(lov, ost_idx), &lwi);
>  	if (tgt->ltd_active)
> diff --git a/drivers/staging/lustre/lustre/mdc/mdc_request.c b/drivers/staging/lustre/lustre/mdc/mdc_request.c
> index 03e55bca4ada..b12518ba5ae9 100644
> --- a/drivers/staging/lustre/lustre/mdc/mdc_request.c
> +++ b/drivers/staging/lustre/lustre/mdc/mdc_request.c
> @@ -888,7 +888,7 @@ static int mdc_getpage(struct obd_export *exp, const struct lu_fid *fid,
>  			       exp->exp_obd->obd_name, -EIO);
>  			return -EIO;
>  		}
> -		lwi = LWI_TIMEOUT_INTR(cfs_time_seconds(resends), NULL, NULL,
> +		lwi = LWI_TIMEOUT_INTR(resends * HZ, NULL, NULL,
>  				       NULL);
>  		l_wait_event(waitq, 0, &lwi);
>  
> diff --git a/drivers/staging/lustre/lustre/mgc/mgc_request.c b/drivers/staging/lustre/lustre/mgc/mgc_request.c
> index b743aee62349..a01d13bde102 100644
> --- a/drivers/staging/lustre/lustre/mgc/mgc_request.c
> +++ b/drivers/staging/lustre/lustre/mgc/mgc_request.c
> @@ -1628,7 +1628,7 @@ int mgc_process_log(struct obd_device *mgc, struct config_llog_data *cld)
>  
>  		if (rcl == -ESHUTDOWN &&
>  		    atomic_read(&mgc->u.cli.cl_mgc_refcount) > 0 && !retry) {
> -			int secs = cfs_time_seconds(obd_timeout);
> +			int secs = obd_timeout * HZ;
>  			struct obd_import *imp;
>  			struct l_wait_info lwi;
>  
> diff --git a/drivers/staging/lustre/lustre/obdclass/cl_io.c b/drivers/staging/lustre/lustre/obdclass/cl_io.c
> index 902bad22013b..ce5e7bdda692 100644
> --- a/drivers/staging/lustre/lustre/obdclass/cl_io.c
> +++ b/drivers/staging/lustre/lustre/obdclass/cl_io.c
> @@ -1097,7 +1097,7 @@ EXPORT_SYMBOL(cl_sync_io_init);
>  int cl_sync_io_wait(const struct lu_env *env, struct cl_sync_io *anchor,
>  		    long timeout)
>  {
> -	struct l_wait_info lwi = LWI_TIMEOUT_INTR(cfs_time_seconds(timeout),
> +	struct l_wait_info lwi = LWI_TIMEOUT_INTR(timeout * HZ,
>  						  NULL, NULL, NULL);
>  	int rc;
>  
> diff --git a/drivers/staging/lustre/lustre/obdecho/echo_client.c b/drivers/staging/lustre/lustre/obdecho/echo_client.c
> index b9c1dc7e61b0..9c5ce5074b66 100644
> --- a/drivers/staging/lustre/lustre/obdecho/echo_client.c
> +++ b/drivers/staging/lustre/lustre/obdecho/echo_client.c
> @@ -752,7 +752,7 @@ static struct lu_device *echo_device_free(const struct lu_env *env,
>  		spin_unlock(&ec->ec_lock);
>  		CERROR("echo_client still has objects at cleanup time, wait for 1 second\n");
>  		set_current_state(TASK_UNINTERRUPTIBLE);
> -		schedule_timeout(cfs_time_seconds(1));
> +		schedule_timeout(HZ);
>  		lu_site_purge(env, ed->ed_site, -1);
>  		spin_lock(&ec->ec_lock);
>  	}
> diff --git a/drivers/staging/lustre/lustre/osc/osc_cache.c b/drivers/staging/lustre/lustre/osc/osc_cache.c
> index b8d5adca94e1..0797e671f667 100644
> --- a/drivers/staging/lustre/lustre/osc/osc_cache.c
> +++ b/drivers/staging/lustre/lustre/osc/osc_cache.c
> @@ -934,7 +934,7 @@ static int osc_extent_wait(const struct lu_env *env, struct osc_extent *ext,
>  			   enum osc_extent_state state)
>  {
>  	struct osc_object *obj = ext->oe_obj;
> -	struct l_wait_info lwi = LWI_TIMEOUT_INTR(cfs_time_seconds(600), NULL,
> +	struct l_wait_info lwi = LWI_TIMEOUT_INTR(600 * HZ, NULL,
>  						  LWI_ON_SIGNAL_NOOP, NULL);
>  	int rc = 0;
>  
> @@ -1571,7 +1571,7 @@ static int osc_enter_cache(const struct lu_env *env, struct client_obd *cli,
>  	struct l_wait_info lwi;
>  	int rc = -EDQUOT;
>  
> -	lwi = LWI_TIMEOUT_INTR(cfs_time_seconds(AT_OFF ? obd_timeout : at_max),
> +	lwi = LWI_TIMEOUT_INTR((AT_OFF ? obd_timeout : at_max) * HZ,
>  			       NULL, LWI_ON_SIGNAL_NOOP, NULL);
>  
>  	OSC_DUMP_GRANT(D_CACHE, cli, "need:%d\n", bytes);
> diff --git a/drivers/staging/lustre/lustre/osc/osc_object.c b/drivers/staging/lustre/lustre/osc/osc_object.c
> index 6c424f0290bb..6baa8e2e00c9 100644
> --- a/drivers/staging/lustre/lustre/osc/osc_object.c
> +++ b/drivers/staging/lustre/lustre/osc/osc_object.c
> @@ -328,7 +328,7 @@ int osc_object_is_contended(struct osc_object *obj)
>  	 * ll_file_is_contended.
>  	 */
>  	retry_time = cfs_time_add(obj->oo_contention_time,
> -				  cfs_time_seconds(osc_contention_time));
> +				  osc_contention_time * HZ);
>  	if (cfs_time_after(cur_time, retry_time)) {
>  		osc_object_clear_contended(obj);
>  		return 0;
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/client.c b/drivers/staging/lustre/lustre/ptlrpc/client.c
> index bac4b2304bad..0ab13f8e5993 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/client.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/client.c
> @@ -766,7 +766,7 @@ int ptlrpc_request_bufs_pack(struct ptlrpc_request *request,
>  			 * fail_loc
>  			 */
>  			set_current_state(TASK_UNINTERRUPTIBLE);
> -			schedule_timeout(cfs_time_seconds(2));
> +			schedule_timeout(2 * HZ);
>  			set_current_state(TASK_RUNNING);
>  		}
>  	}
> @@ -2284,7 +2284,7 @@ int ptlrpc_set_wait(struct ptlrpc_request_set *set)
>  			 * We still want to block for a limited time,
>  			 * so we allow interrupts during the timeout.
>  			 */
> -			lwi = LWI_TIMEOUT_INTR_ALL(cfs_time_seconds(1),
> +			lwi = LWI_TIMEOUT_INTR_ALL(HZ,
>  						   ptlrpc_expired_set,
>  						   ptlrpc_interrupted_set, set);
>  		else
> @@ -2293,7 +2293,7 @@ int ptlrpc_set_wait(struct ptlrpc_request_set *set)
>  			 * interrupts are allowed. Wait until all
>  			 * complete, or an in-flight req times out.
>  			 */
> -			lwi = LWI_TIMEOUT(cfs_time_seconds(timeout ? timeout : 1),
> +			lwi = LWI_TIMEOUT((timeout ? timeout : 1) * HZ,
>  					  ptlrpc_expired_set, set);
>  
>  		rc = l_wait_event(set->set_waitq, ptlrpc_check_set(NULL, set), &lwi);
> @@ -2538,8 +2538,8 @@ static int ptlrpc_unregister_reply(struct ptlrpc_request *request, int async)
>  		 * Network access will complete in finite time but the HUGE
>  		 * timeout lets us CWARN for visibility of sluggish NALs
>  		 */
> -		lwi = LWI_TIMEOUT_INTERVAL(cfs_time_seconds(LONG_UNLINK),
> -					   cfs_time_seconds(1), NULL, NULL);
> +		lwi = LWI_TIMEOUT_INTERVAL(LONG_UNLINK * HZ,
> +					   HZ, NULL, NULL);
>  		rc = l_wait_event(*wq, !ptlrpc_client_recv_or_unlink(request),
>  				  &lwi);
>  		if (rc == 0) {
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/events.c b/drivers/staging/lustre/lustre/ptlrpc/events.c
> index 811b7ab3a582..71f7588570ef 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/events.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/events.c
> @@ -517,7 +517,7 @@ static void ptlrpc_ni_fini(void)
>  
>  			/* Wait for a bit */
>  			init_waitqueue_head(&waitq);
> -			lwi = LWI_TIMEOUT(cfs_time_seconds(2), NULL, NULL);
> +			lwi = LWI_TIMEOUT(2 * HZ, NULL, NULL);
>  			l_wait_event(waitq, 0, &lwi);
>  			break;
>  		}
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/import.c b/drivers/staging/lustre/lustre/ptlrpc/import.c
> index 5b0f65536c29..0eba5f18bd3b 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/import.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/import.c
> @@ -307,9 +307,9 @@ void ptlrpc_invalidate_import(struct obd_import *imp)
>  		 * have been locally cancelled by ptlrpc_abort_inflight.
>  		 */
>  		lwi = LWI_TIMEOUT_INTERVAL(
> -			cfs_timeout_cap(cfs_time_seconds(timeout)),
> -			(timeout > 1) ? cfs_time_seconds(1) :
> -			cfs_time_seconds(1) / 2,
> +			cfs_timeout_cap(timeout * HZ),
> +			(timeout > 1) ? HZ :
> +			HZ / 2,
>  			NULL, NULL);
>  		rc = l_wait_event(imp->imp_recovery_waitq,
>  				  (atomic_read(&imp->imp_inflight) == 0),
> @@ -431,7 +431,7 @@ void ptlrpc_fail_import(struct obd_import *imp, __u32 conn_cnt)
>  int ptlrpc_reconnect_import(struct obd_import *imp)
>  {
>  	struct l_wait_info lwi;
> -	int secs = cfs_time_seconds(obd_timeout);
> +	int secs = obd_timeout * HZ;
>  	int rc;
>  
>  	ptlrpc_pinger_force(imp);
> @@ -1508,14 +1508,13 @@ int ptlrpc_disconnect_import(struct obd_import *imp, int noclose)
>  
>  		if (AT_OFF) {
>  			if (imp->imp_server_timeout)
> -				timeout = cfs_time_seconds(obd_timeout / 2);
> +				timeout = obd_timeout * HZ / 2;
>  			else
> -				timeout = cfs_time_seconds(obd_timeout);
> +				timeout = obd_timeout * HZ;
>  		} else {
>  			int idx = import_at_get_index(imp,
>  				imp->imp_client->cli_request_portal);
> -			timeout = cfs_time_seconds(
> -				at_get(&imp->imp_at.iat_service_estimate[idx]));
> +			timeout = at_get(&imp->imp_at.iat_service_estimate[idx]) * HZ;
>  		}
>  
>  		lwi = LWI_TIMEOUT_INTR(cfs_timeout_cap(timeout),
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/niobuf.c b/drivers/staging/lustre/lustre/ptlrpc/niobuf.c
> index 047d712e850c..0c2ded721c49 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/niobuf.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/niobuf.c
> @@ -270,8 +270,8 @@ int ptlrpc_unregister_bulk(struct ptlrpc_request *req, int async)
>  		/* Network access will complete in finite time but the HUGE
>  		 * timeout lets us CWARN for visibility of sluggish LNDs
>  		 */
> -		lwi = LWI_TIMEOUT_INTERVAL(cfs_time_seconds(LONG_UNLINK),
> -					   cfs_time_seconds(1), NULL, NULL);
> +		lwi = LWI_TIMEOUT_INTERVAL(LONG_UNLINK * HZ,
> +					   HZ, NULL, NULL);
>  		rc = l_wait_event(*wq, !ptlrpc_client_bulk_active(req), &lwi);
>  		if (rc == 0) {
>  			ptlrpc_rqphase_move(req, req->rq_next_phase);
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c b/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c
> index a64e125df95f..c060d6f5015a 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c
> @@ -267,7 +267,7 @@ lustre_get_emerg_rs(struct ptlrpc_service_part *svcpt)
>  		/* If we cannot get anything for some long time, we better
>  		 * bail out instead of waiting infinitely
>  		 */
> -		lwi = LWI_TIMEOUT(cfs_time_seconds(10), NULL, NULL);
> +		lwi = LWI_TIMEOUT(10 * HZ, NULL, NULL);
>  		rc = l_wait_event(svcpt->scp_rep_waitq,
>  				  !list_empty(&svcpt->scp_rep_idle), &lwi);
>  		if (rc != 0)
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/pinger.c b/drivers/staging/lustre/lustre/ptlrpc/pinger.c
> index af707cb2b62b..010a1cdf05fa 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/pinger.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/pinger.c
> @@ -141,7 +141,7 @@ static long pinger_check_timeout(unsigned long time)
>  	}
>  	mutex_unlock(&pinger_mutex);
>  
> -	return cfs_time_sub(cfs_time_add(time, cfs_time_seconds(timeout)),
> +	return cfs_time_sub(cfs_time_add(time, timeout * HZ),
>  					 cfs_time_current());
>  }
>  
> @@ -247,7 +247,7 @@ static int ptlrpc_pinger_main(void *arg)
>  			if (imp->imp_pingable && imp->imp_next_ping &&
>  			    cfs_time_after(imp->imp_next_ping,
>  					   cfs_time_add(this_ping,
> -							cfs_time_seconds(PING_INTERVAL))))
> +							PING_INTERVAL * HZ)))
>  				ptlrpc_update_next_ping(imp, 0);
>  		}
>  		mutex_unlock(&pinger_mutex);
> @@ -264,10 +264,10 @@ static int ptlrpc_pinger_main(void *arg)
>  		CDEBUG(D_INFO, "next wakeup in " CFS_DURATION_T " (%ld)\n",
>  		       time_to_next_wake,
>  		       cfs_time_add(this_ping,
> -				    cfs_time_seconds(PING_INTERVAL)));
> +				    PING_INTERVAL * HZ));
>  		if (time_to_next_wake > 0) {
>  			lwi = LWI_TIMEOUT(max_t(long, time_to_next_wake,
> -						cfs_time_seconds(1)),
> +						HZ),
>  					  NULL, NULL);
>  			l_wait_event(thread->t_ctl_waitq,
>  				     thread_is_stopping(thread) ||
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/ptlrpcd.c b/drivers/staging/lustre/lustre/ptlrpc/ptlrpcd.c
> index 8b865294d933..dad2f9290f70 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/ptlrpcd.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/ptlrpcd.c
> @@ -230,7 +230,7 @@ void ptlrpcd_add_req(struct ptlrpc_request *req)
>  
>  	spin_lock(&req->rq_lock);
>  	if (req->rq_invalid_rqset) {
> -		struct l_wait_info lwi = LWI_TIMEOUT(cfs_time_seconds(5),
> +		struct l_wait_info lwi = LWI_TIMEOUT(5 * HZ,
>  						     back_to_sleep, NULL);
>  
>  		req->rq_invalid_rqset = 0;
> @@ -438,7 +438,7 @@ static int ptlrpcd(void *arg)
>  		int timeout;
>  
>  		timeout = ptlrpc_set_next_timeout(set);
> -		lwi = LWI_TIMEOUT(cfs_time_seconds(timeout ? timeout : 1),
> +		lwi = LWI_TIMEOUT((timeout ? timeout : 1) * HZ,
>  				  ptlrpc_expired_set, set);
>  
>  		lu_context_enter(&env.le_ctx);
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/recover.c b/drivers/staging/lustre/lustre/ptlrpc/recover.c
> index e4d3f23e9f3a..5bbd23eebfa6 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/recover.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/recover.c
> @@ -347,7 +347,7 @@ int ptlrpc_recover_import(struct obd_import *imp, char *new_uuid, int async)
>  
>  	if (!async) {
>  		struct l_wait_info lwi;
> -		int secs = cfs_time_seconds(obd_timeout);
> +		int secs = obd_timeout * HZ;
>  
>  		CDEBUG(D_HA, "%s: recovery started, waiting %u seconds\n",
>  		       obd2cli_tgt(imp->imp_obd), secs);
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/service.c b/drivers/staging/lustre/lustre/ptlrpc/service.c
> index 1f22926c1355..6d4229ebc9d9 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/service.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/service.c
> @@ -2149,7 +2149,7 @@ static int ptlrpc_main(void *arg)
>  			 * Wait for a timeout (unless something else
>  			 * happens) before I try again
>  			 */
> -			svcpt->scp_rqbd_timeout = cfs_time_seconds(1) / 10;
> +			svcpt->scp_rqbd_timeout = HZ / 10;
>  			CDEBUG(D_RPCTRACE, "Posted buffers: %d\n",
>  			       svcpt->scp_nrqbds_posted);
>  		}
> @@ -2588,7 +2588,7 @@ static void ptlrpc_wait_replies(struct ptlrpc_service_part *svcpt)
>  {
>  	while (1) {
>  		int rc;
> -		struct l_wait_info lwi = LWI_TIMEOUT(cfs_time_seconds(10),
> +		struct l_wait_info lwi = LWI_TIMEOUT(10 * HZ,
>  						     NULL, NULL);
>  
>  		rc = l_wait_event(svcpt->scp_waitq,
> @@ -2660,8 +2660,8 @@ ptlrpc_service_unlink_rqbd(struct ptlrpc_service *svc)
>  			 * of sluggish LNDs
>  			 */
>  			lwi = LWI_TIMEOUT_INTERVAL(
> -					cfs_time_seconds(LONG_UNLINK),
> -					cfs_time_seconds(1), NULL, NULL);
> +					LONG_UNLINK * HZ,
> +					HZ, NULL, NULL);
>  			rc = l_wait_event(svcpt->scp_waitq,
>  					  svcpt->scp_nrqbds_posted == 0, &lwi);
>  			if (rc == -ETIMEDOUT) {
> 
> 
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ