Hi Greg, it is not the res counter primitives, these are our own counters. We have to keep signed types for most counters, as the per-cpu counter folding can race and we end up with negative values. The fix for the original issue is in patch 1. There are no casts needed, the range is checked to be sane and then converted to the unsigned type through assignment. Patch 2, also a type fix, ensures we catch accounting races properly. It is unrelated, but also important. Patch 3 implements the idea that we only have to used signed types for _some_ of the counters, but not for constant event counters where the sign-bit would be a waste. Patch 4 converts our fundamental page statistics counters to native words as these should be wide enough for the expected values. Hannes -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>