Re: Linux 2.6.13-rc4

Mickey Stein
2005-07-30T01:56:34Z

Cal Peake wrote:

>On Fri, 29 Jul 2005, Mickey Stein wrote:
>
>
>
>>This is regarding *-rc4 and *-rc4-git1: I slapped together my favorite config
>>and gave it a test run. It had a bit of a problem and ground to a halt after
>>spewing these into the log.
>>
>>If I can find the time tomorrow morning, I'll leave parport_pc commented out
>>of modprobe.conf and see if something else pops loose. I don't use the
>>parallel port, but I try to keep a fairly robust config for noticing bugs.
>>
>>
>
>Hi Mick,
>
>Can you please try the patch below from Linus (or -git2 tomorrow) and
>confirm that it fixes it for you?
>
>thx,
>-cp
>
>--- 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;
> }
>
>
>
Linus Torvalds wrote:

>On Fri, 29 Jul 2005, Mickey Stein wrote:
>
>
>>I've been quite low on time lately, so perhaps I missed something
>>obvious in the notes. When I did the "$make xconfig" , there were no
>>warnings about changes or new config params.
>>
>>
>
>Does this fix it for you? (Already in the current git tree)
>
> Linus
>---
>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;
> }
>
>
>
>
I'm running on *-rc4 at the moment, so thanks very much for the patch.

I think there were ~3 of my modules producing similar output, but after
I followed someone's advice about enabling most of the CONFIG_DEBUG_*
switches, I experienced quite a bit more trouble getting anything to log
(or do anything but freeze). Now, all the modules are loading fine.

If I get time I'll probably be asking which of the 9 or 10 CONFIG_DEB*
switches are compatible with one another, but actually it may have just
been the same bug that would hang me up when they were on. I'll test
with the full CONFIG_DEBUG .config later on.

Appreciate it,

Mick