diff options
author | Gustavo A. R. Silva <gustavo@embeddedor.com> | 2019-06-05 16:45:16 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-06-06 04:03:39 +0200 |
commit | e736bf72af568d0a04f186e1c5dde6789b19c35e (patch) | |
tree | 0d17e2f1c2c06b138eea5af458bf49e4337b0a86 /Documentation/networking | |
parent | inet_connection_sock: remove unused parameter of reqsk_queue_unlink func (diff) | |
download | linux-e736bf72af568d0a04f186e1c5dde6789b19c35e.tar.xz linux-e736bf72af568d0a04f186e1c5dde6789b19c35e.zip |
lib: objagg: Use struct_size() in kzalloc()
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 objagg_stats {
...
struct objagg_obj_stats_info stats_info[];
};
size = sizeof(*objagg_stats) + sizeof(objagg_stats->stats_info[0]) * count;
instance = kzalloc(size, GFP_KERNEL);
Instead of leaving these open-coded and prone to type mistakes, we can
now use the new struct_size() helper:
instance = kzalloc(struct_size(instance, stats_info, count), GFP_KERNEL);
Notice that, in this case, variable alloc_size is not necessary, hence it
is removed.
This code was detected with the help of Coccinelle.
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'Documentation/networking')
0 files changed, 0 insertions, 0 deletions