Re: [PATCH 5/9] treewide: use kv[mz]alloc* rather than opencoded variants
From: Kees Cook <hidden>
Date: 2017-01-30 19:24:15
Also in:
linux-mm, lkml
On Mon, Jan 30, 2017 at 1:49 AM, Michal Hocko [off-list ref] wrote:
From: Michal Hocko <mhocko@suse.com> There are many code paths opencoding kvmalloc. Let's use the helper instead. The main difference to kvmalloc is that those users are usually not considering all the aspects of the memory allocator. E.g. allocation requests <= 32kB (with 4kB pages) are basically never failing and invoke OOM killer to satisfy the allocation. This sounds too disruptive for something that has a reasonable fallback - the vmalloc. On the other hand those requests might fallback to vmalloc even when the memory allocator would succeed after several more reclaim/compaction attempts previously. There is no guarantee something like that happens though. This patch converts many of those places to kv[mz]alloc* helpers because they are more conservative. Changes since v1 - add kvmalloc_array - this might silently fix some overflow issues because most users simply didn't check the overflow for the vmalloc fallback.
Awesome, thanks for adding that API. :) Acked-by: Kees Cook <redacted> -Kees -- Kees Cook Nexus Security -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>