On Sun, Oct 28, 2012 at 06:47:22PM -0700, Tejun Heo wrote: > Hello, > > On Fri, Oct 26, 2012 at 02:01:23PM +0200, Bart Van Assche wrote: > > Code like "drain |= q->nr_rqs[i]" might result in blk_drain_queue() > > to finish early if the expression at the RHS is a multiple of 256 > > since the drain variable is only eight bits wide. Avoid this by > > changing the type of the drain variable from bool into unsigned. > > No, it doesn't happen that way. One of the reasons we have bool at > all is to avoid this type of problems caused by implicit type-casting. > > Why do you keep pushing this? It's WRONG. Please drop it. >From C99 std draft. 6.3 Conversions 6.3.1.2 Boolean type When any scalar value is converted to _Bool, the result is 0 if the value compares equal to 0; otherwise, the result is 1. It doesn't care the width or signedness of the type being converted. If the origin value equals zero, it converts to 0; otherwise 1. Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html