This patch series aims to fix a couple hundred -Wflex-array-member-not-at-end warnings by creating a new tagged struct `struct bio_hdr` within flexible structure `struct bio`. This new tagged struct will be used to fix problematic declarations of middle-flex-arrays in composite structs, like these[1][2][3], for instance. [1] https://git.kernel.org/linus/a7e8997ae18c42d3 [2] https://git.kernel.org/linus/c1ddb29709e675ea [3] https://git.kernel.org/linus/57be3d3562ca4aa6 Gustavo A. R. Silva (8): block: blk_types.h: Use struct_group_tagged() in flex struct bio md/raid5-ppl: Avoid -Wflex-array-member-not-at-end warning xfs: Avoid -Wflex-array-member-not-at-end warnings erofs: Avoid -Wflex-array-member-not-at-end warnings btrfs: Avoid -Wflex-array-member-not-at-end warnings nvme: target: Avoid -Wflex-array-member-not-at-end warnings md/raid5: Avoid -Wflex-array-member-not-at-end warnings bcache: Avoid -Wflex-array-member-not-at-end warnings drivers/md/bcache/bcache.h | 4 +- drivers/md/bcache/journal.c | 10 ++-- drivers/md/bcache/journal.h | 4 +- drivers/md/bcache/super.c | 8 ++-- drivers/md/raid5-ppl.c | 8 ++-- drivers/md/raid5.c | 10 ++-- drivers/md/raid5.h | 2 +- drivers/nvme/target/nvmet.h | 4 +- drivers/nvme/target/passthru.c | 2 +- drivers/nvme/target/zns.c | 2 +- fs/btrfs/disk-io.c | 4 +- fs/btrfs/volumes.h | 2 +- fs/erofs/fileio.c | 25 ++++++---- fs/erofs/fscache.c | 13 +++--- fs/xfs/xfs_log.c | 15 +++--- fs/xfs/xfs_log_priv.h | 2 +- include/linux/blk_types.h | 84 ++++++++++++++++++---------------- 17 files changed, 107 insertions(+), 92 deletions(-) -- 2.43.0