diff options
author | Gustavo A. R. Silva <gustavo@embeddedor.com> | 2019-10-02 14:03:41 -0500 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2019-11-05 14:09:59 -0500 |
commit | 8adeac3be03d400f9c2391d52f85cd27bd188800 (patch) | |
tree | a6ed57219cb85a0474c904a93022c9001a2ed992 /include/linux/device-mapper.h | |
parent | 53be73a5d75f477e52c9275ed7aa9307a8b73e5c (diff) | |
download | lwn-8adeac3be03d400f9c2391d52f85cd27bd188800.tar.gz lwn-8adeac3be03d400f9c2391d52f85cd27bd188800.zip |
dm stripe: use struct_size() in kmalloc()
One of the more common cases of allocation size calculations is finding
the size of a structure that has a zero-sized array at the end, along
with memory for some number of elements for that array. For example:
struct stripe_c {
...
struct stripe stripe[0];
};
In this case alloc_context() and dm_array_too_big() are removed and
replaced by the direct use of the struct_size() helper in kmalloc().
Notice that open-coded form is prone to type mistakes.
This code was detected with the help of Coccinelle.
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'include/linux/device-mapper.h')
-rw-r--r-- | include/linux/device-mapper.h | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/include/linux/device-mapper.h b/include/linux/device-mapper.h index 399ad8632356..2e13826898b2 100644 --- a/include/linux/device-mapper.h +++ b/include/linux/device-mapper.h @@ -594,9 +594,6 @@ void *dm_vcalloc(unsigned long nmemb, unsigned long elem_size); */ #define dm_round_up(n, sz) (dm_div_up((n), (sz)) * (sz)) -#define dm_array_too_big(fixed, obj, num) \ - ((num) > (UINT_MAX - (fixed)) / (obj)) - /* * Sector offset taken relative to the start of the target instead of * relative to the start of the device. |