From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Deepak R Varma <drv@mailo.com>
Cc: linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org,
gustavoars@kernel.org
Subject: Re: [PATCH] staging: wlan-ng: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper
Date: Thu, 17 Nov 2022 19:03:21 +0100 [thread overview]
Message-ID: <Y3Z3aatcaISvqURJ@kroah.com> (raw)
In-Reply-To: <Y3Y1N6AwWEXLpSrx@qemulion>
On Thu, Nov 17, 2022 at 06:50:55PM +0530, Deepak R Varma wrote:
> On Thu, Nov 17, 2022 at 01:54:49PM +0100, Greg Kroah-Hartman wrote:
> > On Thu, Nov 17, 2022 at 03:48:45PM +0530, Deepak R Varma wrote:
> > > The code currently uses C90 standard extension based zero length arrays.
> > > The zero length array member also happens to be the only member of the
> > > structs. Such zero length array declarations are deprecated and the
> > > new C99 standard extension of flexible array declarations are to be
> > > used instead.
> > >
> > > The DECLARE_FLEX_ARRAY() helper allows for a flexible array member as
> > > the only member in a structure. Refer to these links [1], [2] for
> > > details.
> > >
> > > [1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
> > > [2] https://lkml.kernel.org/r/YxKY6O2hmdwNh8r8@work
> > >
> > > Issue identified using Coccinelle.
> > >
> > > Signed-off-by: Deepak R Varma <drv@mailo.com>
> > > ---
> > >
> > > Notes:
> > > 1. Proposed change is compile tested only.
> > > 2. Solution feedback from gustavoars@kernel.org
> > >
> > >
> > > drivers/staging/wlan-ng/hfa384x.h | 6 +++---
> > > 1 file changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/staging/wlan-ng/hfa384x.h b/drivers/staging/wlan-ng/hfa384x.h
> > > index 0611e37df6ac..3a1edcb43e07 100644
> > > --- a/drivers/staging/wlan-ng/hfa384x.h
> > > +++ b/drivers/staging/wlan-ng/hfa384x.h
> > > @@ -960,15 +960,15 @@ struct hfa384x_pdr_nicid {
> > > } __packed;
> > >
> > > struct hfa384x_pdr_refdac_measurements {
> > > - u16 value[0];
> > > + DECLARE_FLEX_ARRAY(u16, value);
> > > } __packed;
> >
> > Why? This structure is never used anywhere, right? So why is this
> > needed to be changed and not just removed entirely? Same for the other
> > structures in this patch.
>
> Hello Greg,
> I am unable to confirm that these structures are truly not needed in the absence
> if a real device based testing. I could only validate that using the compile
> build and driver loading.
Think this through, if no one is actually using this structure, and it
is of 0 size, then do you think it is being used?
> This change that I am proposing in the interim would enable the compiler to
> protect the structure from addition of a new member below the zero length array.
Why would you want to add a new member below this? That's not what is
happening here at all.
Please think this through a bit more.
good luck!
greg k-h
next prev parent reply other threads:[~2022-11-17 18:12 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-17 10:18 [PATCH] staging: wlan-ng: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper Deepak R Varma
2022-11-17 12:54 ` Greg Kroah-Hartman
2022-11-17 13:20 ` Deepak R Varma
2022-11-17 18:03 ` Greg Kroah-Hartman [this message]
2022-11-19 14:38 ` Deepak R Varma
2022-11-28 7:45 ` Deepak R Varma
2022-11-28 7:50 ` Dan Carpenter
2022-11-28 8:21 ` Deepak R Varma
2022-11-28 8:25 ` Dan Carpenter
2022-11-28 8:26 ` Deepak R Varma
2022-11-28 7:53 ` Greg Kroah-Hartman
2022-11-28 8:23 ` Deepak R Varma
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Y3Z3aatcaISvqURJ@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=drv@mailo.com \
--cc=gustavoars@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-staging@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.