Messages in this thread | | | Date | Thu, 24 Oct 2002 21:16:33 +0530 | From | Dipankar Sarma <> | Subject | Re: [long]2.5.44-mm3 UP went into unexpected trashing |
| |
On Thu, Oct 24, 2002 at 09:01:05PM +0530, Dipankar Sarma wrote: > OK, I think I know why this one didn't work. > > If the bit_mask is 0, find_first_bit() returns 32 or BITS_PER_LONG. > That works fine as long as NR_CPUS is 32, but when it isn't things > are broken. > > (find_first_bit(rcu_ctrlblk.rcu_cpu_mask, NR_CPUS) != BITS_PER_LONG)) { > return; > > should probably work here. > > I guess we need to audit all bitmask tests and fix them to check for > the right value.
Argh!! I spoke too soon.
AFAICS, find_first_bit() needs to be fixed to return "size" if the bitmask is all zeros.
Thanks -- Dipankar Sarma <dipankar@in.ibm.com> http://lse.sourceforge.net Linux Technology Center, IBM Software Lab, Bangalore, India. - 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/
| |