From d9ad1bdd6d72606a59cdc07e571fbe695e32f271 Mon Sep 17 00:00:00 2001 From: Clemens Ladisch Date: Tue, 27 Sep 2005 15:57:24 +0200 Subject: [PATCH] [ALSA] rtctimer: optimize module parameter validation Modules: RTC timer driver The check whether rtctimer_freq is a power of two can be done easier with a simple bit operation. Signed-off-by: Clemens Ladisch --- sound/core/rtctimer.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/sound/core/rtctimer.c b/sound/core/rtctimer.c index 85627dbe6a..8762ff8938 100644 --- a/sound/core/rtctimer.c +++ b/sound/core/rtctimer.c @@ -119,16 +119,11 @@ static void rtctimer_interrupt(void *private_data) */ static int __init rtctimer_init(void) { - int order, err; + int err; snd_timer_t *timer; - if (rtctimer_freq < 2 || rtctimer_freq > 8192) { - snd_printk(KERN_ERR "rtctimer: invalid frequency %d\n", rtctimer_freq); - return -EINVAL; - } - for (order = 1; rtctimer_freq > order; order <<= 1) - ; - if (rtctimer_freq != order) { + if (rtctimer_freq < 2 || rtctimer_freq > 8192 || + (rtctimer_freq & (rtctimer_freq - 1)) != 0) { snd_printk(KERN_ERR "rtctimer: invalid frequency %d\n", rtctimer_freq); return -EINVAL; } -- 2.39.5