On 09/14/2010 11:20 AM, H. Peter Anvin wrote: > On 09/14/2010 10:49 AM, Jeremy Fitzhardinge wrote: >> On 09/13/2010 10:18 PM, matt mooney wrote: >>> Unnecessary cast from void* in assignment. >> Not very keen on this. The cast may not be strictly required, but it >> does document what's going on there. >> > But unnecessary casts are problematic in that if the type changes, they > can hide a real bug in the future. If page->private changes in a way which invalidates this kind of usage, I would hope it would also change name to something more descriptive of its new role. If it changes type but is broadly compatible with this usage (say, void * -> unsigned long), then the cast won't matter, or will become a requirement. I'm more concerned about "user_ptr" changing type, in which case the cast will highlight the problem. In general, the casts from these kinds of generic/polymorphic fields let you easily eyeball how they're being used, without having to work out what the type of the other side is. J -- To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html