aboutsummaryrefslogtreecommitdiff
path: root/include/linux/watch_queue.h
diff options
context:
space:
mode:
authorKees Cook <[email protected]>2023-09-22 10:54:08 -0700
committerChristian Brauner <[email protected]>2023-10-19 11:02:48 +0200
commit85fadf89e5708d74c4923e9ceeca4b9df0e000bb (patch)
tree6cc4522ea96b4f0fcf5537e8d7d2dca322899a8b /include/linux/watch_queue.h
parent478dbf12176700f28d836dd03ae93a6888278230 (diff)
watch_queue: Annotate struct watch_filter 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 watch_filter. [1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci Cc: David Howells <[email protected]> Cc: Randy Dunlap <[email protected]> Cc: Al Viro <[email protected]> Cc: Christian Brauner <[email protected]> Cc: Jonathan Corbet <[email protected]> Cc: Siddh Raman Pant <[email protected]> Cc: Mauro Carvalho Chehab <[email protected]> Cc: Qian Cai <[email protected]> Signed-off-by: Kees Cook <[email protected]> Tested-by: Siddh Raman Pant <[email protected]> Reviewed-by: "Gustavo A. R. Silva" <[email protected]> Message-Id: <[email protected]> Signed-off-by: Christian Brauner <[email protected]>
Diffstat (limited to 'include/linux/watch_queue.h')
-rw-r--r--include/linux/watch_queue.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/watch_queue.h b/include/linux/watch_queue.h
index 45cd42f55d49..429c7b6afead 100644
--- a/include/linux/watch_queue.h
+++ b/include/linux/watch_queue.h
@@ -32,7 +32,7 @@ struct watch_filter {
DECLARE_BITMAP(type_filter, WATCH_TYPE__NR);
};
u32 nr_filters; /* Number of filters */
- struct watch_type_filter filters[];
+ struct watch_type_filter filters[] __counted_by(nr_filters);
};
struct watch_queue {