bit testing nervousness...

From: Jeff Garzik (jgarzik@pobox.com)
Date: Sun Dec 08 2002 - 22:54:00 EST


Hey...

WRT all these test_bit()/set_bit() cleanups. I am a bit nervous about
these changes that are coming in...

When I see types change from "u8" or "u32" to "long" just to make
<foo>_bit() work, that really makes me think that cleanup is wrong. I
haven't looked closely at the recent set_bit() cleanups yet, but I am
willing to bet that at least some of them are wrongly changing the size
of a variable's type.

My preference would be to _eliminate_ the set_bit call and simply
open-code the bitop, i.e.
        set_bit(bitnum, &foo);
become
        foo |= (1 << bitnum);
        
Really, for each cleanup, you need to look hard at the change and
see if <foo>_bit() is being used for atomicity reasons or simply
programmer preference. (and other issues like endian issues) The
latter can easily be changed to open-coding.

Disclaimer, my argument is null and void if each change has been closely
studied and is really correct :) However I'm guessing we all are only
glancing at the changes :)

        Jeff

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Dec 15 2002 - 22:00:13 EST