29.01.2015, 22:57, "Andrew Shewmaker" <agshew@xxxxxxxxx>: > On Thu, Jan 29, 2015 at 04:06:03PM +0300, Roman Gushchin wrote: >> I noticed, that "allowed" can easily overflow by falling below 0, >> because (total_vm / 32) can be larger than "allowed". The problem >> occurs in OVERCOMMIT_NONE mode. >> > Makes sense to me. Please fix mm/nommu.c also. Thanks! I sent a patch for nommu.c. > > If a caller passes in a big negative value for pages, > then vm_acct_memory() would decrement vm_committed_as, possibly > causing percpu_counter_read_positive(&vm_committed_as) and > __vm_enough_memory to return 0. Maybe that's okay? Callers > won't be passing in a negative pages anyway. Is there a reason > to let them, though? I think, it isn't a problem, since no one will commit negative values (I hope). R. -- 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>