diff options
author | Gustavo A. R. Silva <gustavo@embeddedor.com> | 2019-08-29 20:17:21 +0200 |
---|---|---|
committer | Bjorn Andersson <bjorn.andersson@linaro.org> | 2019-08-29 20:24:31 +0200 |
commit | 61c65f47f30a1f32e0a84fe8335cd0360a028b48 (patch) | |
tree | 715f16c8e086ee65f5298c9f6d8c6b63f8405c78 | |
parent | rpmsg: virtio_rpmsg_bus: replace "%p" with "%pK" (diff) | |
download | linux-61c65f47f30a1f32e0a84fe8335cd0360a028b48.tar.xz linux-61c65f47f30a1f32e0a84fe8335cd0360a028b48.zip |
rpmsg: glink: Use struct_size() helper
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 {
...
struct intent_pair intents[];
} __packed * msg;
Make use of the struct_size() helper instead of an open-coded version
in order to avoid any potential type mistakes.
So, replace the following form:
sizeof(*msg) + sizeof(struct intent_pair) * count
with:
struct_size(msg, intents, count)
This code was detected with the help of Coccinelle.
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
-rw-r--r-- | drivers/rpmsg/qcom_glink_native.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c index f46c787733e8..621f1afd4d6b 100644 --- a/drivers/rpmsg/qcom_glink_native.c +++ b/drivers/rpmsg/qcom_glink_native.c @@ -892,7 +892,7 @@ static void qcom_glink_handle_intent(struct qcom_glink *glink, struct intent_pair intents[]; } __packed * msg; - const size_t msglen = sizeof(*msg) + sizeof(struct intent_pair) * count; + const size_t msglen = struct_size(msg, intents, count); int ret; int i; unsigned long flags; |