summaryrefslogtreecommitdiff
path: root/include/linux/firewire.h
diff options
context:
space:
mode:
authorGustavo A. R. Silva <gustavoars@kernel.org>2024-03-25 19:56:10 -0600
committerTakashi Sakamoto <o-takashi@sakamocchi.jp>2024-05-06 11:06:04 +0900
commitd3155742db89df3b3c96da383c400e6ff4d23c25 (patch)
treeb51214645e900e6eb7273bd04901fda9890cc6c8 /include/linux/firewire.h
parentf83a052f9a0b62318d4f6e9bdddf9fc0103ac908 (diff)
firewire: Annotate struct fw_iso_packet 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 via CONFIG_UBSAN_BOUNDS (for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family functions). Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org> Link: https://lore.kernel.org/r/ZgIrOuR3JI/jzqoH@neat Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Diffstat (limited to 'include/linux/firewire.h')
-rw-r--r--include/linux/firewire.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/firewire.h b/include/linux/firewire.h
index dd9f2d765e68..00abe0e5d602 100644
--- a/include/linux/firewire.h
+++ b/include/linux/firewire.h
@@ -463,7 +463,8 @@ struct fw_iso_packet {
u32 tag:2; /* tx: Tag in packet header */
u32 sy:4; /* tx: Sy in packet header */
u32 header_length:8; /* Length of immediate header */
- u32 header[]; /* tx: Top of 1394 isoch. data_block */
+ /* tx: Top of 1394 isoch. data_block */
+ u32 header[] __counted_by(header_length);
};
#define FW_ISO_CONTEXT_TRANSMIT 0