include/linux/firewire.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
This reverts commit d3155742db89df3b3c96da383c400e6ff4d23c25.
The header_length field is byte unit, thus it can not express the number of
elements in header field.
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
---
include/linux/firewire.h | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/include/linux/firewire.h b/include/linux/firewire.h
index 00abe0e5d602..1cca14cf5652 100644
--- a/include/linux/firewire.h
+++ b/include/linux/firewire.h
@@ -462,9 +462,8 @@ struct fw_iso_packet {
/* rx: Sync bit, wait for matching sy */
u32 tag:2; /* tx: Tag in packet header */
u32 sy:4; /* tx: Sy in packet header */
- u32 header_length:8; /* Length of immediate header */
- /* tx: Top of 1394 isoch. data_block */
- u32 header[] __counted_by(header_length);
+ u32 header_length:8; /* Size of immediate header */
+ u32 header[]; /* tx: Top of 1394 isoch. data_block */
};
#define FW_ISO_CONTEXT_TRANSMIT 0
--
2.43.0
On Fri, Jul 26, 2024 at 01:16:48AM +0900, Takashi Sakamoto wrote:
> This reverts commit d3155742db89df3b3c96da383c400e6ff4d23c25.
>
> The header_length field is byte unit, thus it can not express the number of
> elements in header field.
>
> Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
> ---
> include/linux/firewire.h | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/include/linux/firewire.h b/include/linux/firewire.h
> index 00abe0e5d602..1cca14cf5652 100644
> --- a/include/linux/firewire.h
> +++ b/include/linux/firewire.h
> @@ -462,9 +462,8 @@ struct fw_iso_packet {
> /* rx: Sync bit, wait for matching sy */
> u32 tag:2; /* tx: Tag in packet header */
> u32 sy:4; /* tx: Sy in packet header */
> - u32 header_length:8; /* Length of immediate header */
> - /* tx: Top of 1394 isoch. data_block */
> - u32 header[] __counted_by(header_length);
> + u32 header_length:8; /* Size of immediate header */
> + u32 header[]; /* tx: Top of 1394 isoch. data_block */
> };
>
> #define FW_ISO_CONTEXT_TRANSMIT 0
Applied to for-linus branch in firewire subsystem tree[1], with slight
change of comment. It would be sent to mainline today with another patch[2].
[1] https://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394.git/log/?h=for-linus
[2] https://lore.kernel.org/stable/20240725155640.128442-1-o-takashi@sakamocchi.jp/
Regards
Takashi Sakamoto
© 2016 - 2026 Red Hat, Inc.