diff options
author | Gustavo A. R. Silva <gustavoars@kernel.org> | 2020-06-20 01:08:30 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-06-24 17:15:58 +0200 |
commit | f61d6e259c7ebb9a134dee5cd0b32c192d726984 (patch) | |
tree | 7339b7cd4a74f65cd629b22598ed9723e51d441d /block/blk-iocost.c | |
parent | block: bio: Use struct_size() in kmalloc() (diff) | |
download | linux-f61d6e259c7ebb9a134dee5cd0b32c192d726984.tar.xz linux-f61d6e259c7ebb9a134dee5cd0b32c192d726984.zip |
blk-iocost: Use struct_size() in kzalloc_node()
Make use of the struct_size() helper instead of an open-coded version
in order to avoid any potential type mistakes.
This code was detected with the help of Coccinelle and, audited and
fixed manually.
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Addresses-KSPP-ID: https://github.com/KSPP/linux/issues/83
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-iocost.c')
-rw-r--r-- | block/blk-iocost.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/block/blk-iocost.c b/block/blk-iocost.c index 8ac4aad66ebc..cea5ee9be639 100644 --- a/block/blk-iocost.c +++ b/block/blk-iocost.c @@ -2045,8 +2045,7 @@ static struct blkg_policy_data *ioc_pd_alloc(gfp_t gfp, struct request_queue *q, int levels = blkcg->css.cgroup->level + 1; struct ioc_gq *iocg; - iocg = kzalloc_node(sizeof(*iocg) + levels * sizeof(iocg->ancestors[0]), - gfp, q->node); + iocg = kzalloc_node(struct_size(iocg, ancestors, levels), gfp, q->node); if (!iocg) return NULL; |