Re: Linux 2.6.13-rc4 (snd-cs46xx)

From: Cal Peake
Date: Fri Jul 29 2005 - 12:50:30 EST


On Fri, 29 Jul 2005, Linus Torvalds wrote:

> Thanks. Just out of interest, does this patch fix it instead?

Indeed it does, thanks Linus!

-cp

> ----
> diff --git a/include/asm-i386/bitops.h b/include/asm-i386/bitops.h
> --- a/include/asm-i386/bitops.h
> +++ b/include/asm-i386/bitops.h
> @@ -335,14 +335,13 @@ static inline unsigned long __ffs(unsign
> static inline int find_first_bit(const unsigned long *addr, unsigned size)
> {
> int x = 0;
> - do {
> - if (*addr)
> - return __ffs(*addr) + x;
> - addr++;
> - if (x >= size)
> - break;
> +
> + while (x < size) {
> + unsigned long val = *addr++;
> + if (val)
> + return __ffs(val) + x;
> x += (sizeof(*addr)<<3);
> - } while (1);
> + }
> return x;
> }
>
>

--
"Democracy can learn some things from Communism; for example,
when a Communist politician is through, he is through."
-- Unknown
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/