On 2017/9/6 22:33, Tejun Heo wrote: > Hello, > > On Wed, Sep 06, 2017 at 11:34:14AM +0800, zijun_hu wrote: >> From: zijun_hu <zijun_hu@xxxxxxx> >> >> type bool is used to index three arrays in alloc_and_link_pwqs() >> it doesn't look like conventional. >> >> it is fixed by using type int to index the relevant arrays. > > bool is a uint type which can be either 0 or 1. I don't see what the > benefit of this patch is.q > bool is NOT a uint type now, it is a new type introduced by gcc, it is rather different with "typedef int bool" historically see following code segments for more info about type bool bool v = 0x10; printf("v = %d\n", v); the output is v = 1. it maybe cause a invalid array index if bool is represented as uint bool highpri = wq->flags & WQ_HIGHPRI; WQ_HIGHPRI = 1 << 4, @highpri maybe 16, but the number of array elements is 2. bool is a logic value, the valid value is true or false. indexing array by type bool is not a good program custom it is more extendable to use type int, type bool maybe is improper if the number of array elements is extended to more than 2 in future besides, the relevant array is indexed by type int in many other places of the same source file. this patch can keep consistency > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>