All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kernel: time: timer.c: use __fls in apply_slack()
@ 2015-10-02  7:45 Rasmus Villemoes
  2015-10-11 20:09 ` [tip:timers/core] timers: Use " tip-bot for Rasmus Villemoes
  2015-10-11 20:15 ` tip-bot for Rasmus Villemoes
  0 siblings, 2 replies; 3+ messages in thread
From: Rasmus Villemoes @ 2015-10-02  7:45 UTC (permalink / raw)
  To: John Stultz, Thomas Gleixner; +Cc: Rasmus Villemoes, linux-kernel

In apply_slack(), find_last_bit() is applied to a bitmask consisting
of precisely BITS_PER_LONG bits. Since mask is non-zero, we might as
well eliminate the function call and use __fls() directly. On x86_64,
this shaves 23 bytes of the only caller, mod_timer().

This also gets rid of Coverity CID 1192106, but that is a false
positive: Coverity is not aware that mask != 0 implies that
find_last_bit will not return BITS_PER_LONG.

Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
---
 kernel/time/timer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/time/timer.c b/kernel/time/timer.c
index 84190f02b521..71eb089d1030 100644
--- a/kernel/time/timer.c
+++ b/kernel/time/timer.c
@@ -867,7 +867,7 @@ unsigned long apply_slack(struct timer_list *timer, unsigned long expires)
 	if (mask == 0)
 		return expires;
 
-	bit = find_last_bit(&mask, BITS_PER_LONG);
+	bit = __fls(mask);
 
 	mask = (1UL << bit) - 1;
 
-- 
2.1.3


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-10-11 20:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-02  7:45 [PATCH] kernel: time: timer.c: use __fls in apply_slack() Rasmus Villemoes
2015-10-11 20:09 ` [tip:timers/core] timers: Use " tip-bot for Rasmus Villemoes
2015-10-11 20:15 ` tip-bot for Rasmus Villemoes

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.