diff options
| author | Shyamsundar Ranganathan <srangana@redhat.com> | 2017-05-01 17:22:34 +0000 | 
|---|---|---|
| committer | Kaleb KEITHLEY <kkeithle@redhat.com> | 2017-05-01 21:43:38 +0000 | 
| commit | 9374338f9c2f126c6608625f750d5ea1f7ef6a06 (patch) | |
| tree | b9db965e337fde22a7668cb11ffb0351619a924f | |
| parent | c92b8347aea8ce78ca3fbc49b88f5adadc98509b (diff) | |
Revert "contrib/timerwheel: probable bug on 32-bit, use __builtin_ffs()"
This reverts commit c92b8347aea8ce78ca3fbc49b88f5adadc98509b.
Commit is not ready for a merge!
Change-Id: I3b3b52f7bfb4781dd42160e2b1059b4cdeb17956
Reviewed-on: https://review.gluster.org/17147
Tested-by: Shyamsundar Ranganathan <srangana@redhat.com>
Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>
Smoke: Gluster Build System <jenkins@build.gluster.org>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
| -rw-r--r-- | contrib/timer-wheel/find_last_bit.c | 17 | 
1 files changed, 5 insertions, 12 deletions
diff --git a/contrib/timer-wheel/find_last_bit.c b/contrib/timer-wheel/find_last_bit.c index 0479c52f904..054e90a076f 100644 --- a/contrib/timer-wheel/find_last_bit.c +++ b/contrib/timer-wheel/find_last_bit.c @@ -15,22 +15,15 @@  */  /** - * @find_first_bit - * optimized implementation of find first bit in + * @find_last_bit + * optimized implementation of find last bit in   */  #ifndef BITS_PER_LONG -#ifdef __LP64__  #define BITS_PER_LONG 64 -#else -#define BITS_PER_LONG 32 -#endif  #endif -#if defined(__GNUC__) || defined(__clang__) -#define ffs(p) __builtin_ffs(p) -#else -static inline int ffs(int x) +static inline int fls(int x)  {  	int r = 32; @@ -58,7 +51,7 @@ static inline int ffs(int x)  	}  	return r;  } -#endif +  unsigned long gf_tw_find_last_bit(const unsigned long *addr, unsigned long size)  { @@ -80,7 +73,7 @@ unsigned long gf_tw_find_last_bit(const unsigned long *addr, unsigned long size)  		tmp = addr[--words];  		if (tmp) {  found: -			return words * BITS_PER_LONG + ffs(tmp); +			return words * BITS_PER_LONG + fls(tmp);  		}  	}  | 
