On Tue, 17 Jun 2025, Gustavo A. R. Silva wrote: > Replace flexible-array member with a fixed-size array. > > With this changes, fix many instances of the following type of > warnings: > > fs/nfsd/nfsfh.h:79:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] > fs/nfsd/state.h:763:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] > fs/nfsd/state.h:669:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] > fs/nfsd/state.h:549:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] > fs/nfsd/xdr4.h:705:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] > fs/nfsd/xdr4.h:678:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end] > > Signed-off-by: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx> > --- > Changes in v3: > - Replace flexible-array member with a fixed-size array. (NeilBrown) > > Changes in v2: > - Use indices into `fh_raw`. (Christoph) > - Remove union and flexible-array member `fh_fsid`. (Christoph) > - Link: https://lore.kernel.org/linux-hardening/aEoKCuQ1YDs2Ivn0@kspp/ > > v1: > - Link: https://lore.kernel.org/linux-hardening/aBp37ZXBJM09yAXp@kspp/ > > fs/nfsd/nfsfh.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/nfsd/nfsfh.h b/fs/nfsd/nfsfh.h > index 5103c2f4d225..760e77f3630b 100644 > --- a/fs/nfsd/nfsfh.h > +++ b/fs/nfsd/nfsfh.h > @@ -56,7 +56,7 @@ struct knfsd_fh { > u8 fh_auth_type; /* deprecated */ > u8 fh_fsid_type; > u8 fh_fileid_type; > - u32 fh_fsid[]; /* flexible-array member */ > + u32 fh_fsid[NFS4_FHSIZE / 4 - 1]; > }; Thanks. I think this is a good and simple solution. Reviewed-by: NeilBrown <neil@xxxxxxxxxx> > }; > }; > -- > 2.43.0 > >