]> git.baikalelectronics.ru Git - kernel.git/commit
overflow.h: Add allocation size calculation helpers
authorKees Cook <keescook@chromium.org>
Mon, 7 May 2018 23:47:02 +0000 (16:47 -0700)
committerKees Cook <keescook@chromium.org>
Tue, 5 Jun 2018 19:16:51 +0000 (12:16 -0700)
commit73479f5ab2c995a0463f1f7ba8fda744f9cf36f6
treed2cc1abd8221f8b83a46331f0a3814b03482d783
parenta9fcec890c704a835ddd3be23b9aa3d6ff871bb4
overflow.h: Add allocation size calculation helpers

In preparation for replacing unchecked overflows for memory allocations,
this creates helpers for the 3 most common calculations:

array_size(a, b): 2-dimensional array
array3_size(a, b, c): 3-dimensional array
struct_size(ptr, member, n): struct followed by n-many trailing members

Each of these return SIZE_MAX on overflow instead of wrapping around.

(Additionally renames a variable named "array_size" to avoid future
collision.)

Co-developed-by: Matthew Wilcox <mawilcox@microsoft.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
drivers/md/dm-table.c
include/linux/overflow.h