diff options
author | Kees Cook <keescook@chromium.org> | 2023-09-15 13:03:36 -0700 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2023-10-02 09:48:52 -0700 |
commit | e3260d90c8f35c03ce182bfd2eeea75805586c25 (patch) | |
tree | eb7f7a1973b199f49fb13e3145c3c0de6f70d4d9 /drivers/md | |
parent | 150849c5e2630ddf29411bb5334a548cc10d4814 (diff) | |
download | lwn-e3260d90c8f35c03ce182bfd2eeea75805586c25.tar.gz lwn-e3260d90c8f35c03ce182bfd2eeea75805586c25.zip |
dm raid: Annotate struct raid_set with __counted_by
Prepare for the coming implementation by GCC and Clang of the __counted_by
attribute. Flexible array members annotated with __counted_by can have
their accesses bounds-checked at run-time checking via CONFIG_UBSAN_BOUNDS
(for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
functions).
As found with Coccinelle[1], add __counted_by for struct raid_set.
[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci
Cc: Alasdair Kergon <agk@redhat.com>
Cc: Mike Snitzer <snitzer@kernel.org>
Cc: dm-devel@redhat.com
Reviewed-by: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Link: https://lore.kernel.org/r/20230915200335.never.098-kees@kernel.org
Signed-off-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'drivers/md')
-rw-r--r-- | drivers/md/dm-raid.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/dm-raid.c b/drivers/md/dm-raid.c index 5f9991765f27..9755788e8b78 100644 --- a/drivers/md/dm-raid.c +++ b/drivers/md/dm-raid.c @@ -254,7 +254,7 @@ struct raid_set { int mode; } journal_dev; - struct raid_dev dev[]; + struct raid_dev dev[] __counted_by(raid_disks); }; static void rs_config_backup(struct raid_set *rs, struct rs_layout *l) |