All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nathan Chancellor <nathan@kernel.org>
To: Kees Cook <kees@kernel.org>
Cc: Saurav Kashyap <skashyap@marvell.com>,
	Javed Hasan <jhasan@marvell.com>,
	GR-QLogic-Storage-Upstream@marvell.com,
	"James E.J. Bottomley" <James.Bottomley@hansenpartnership.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	linux-scsi@vger.kernel.org, WangYuli <wangyuli@uniontech.com>,
	Mark Brown <broonie@kernel.org>,
	"Dr. David Alan Gilbert" <linux@treblig.org>,
	linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org
Subject: Re: [PATCH] scsi: qedf: Use designated initializer for struct qed_fcoe_cb_ops
Date: Wed, 7 May 2025 21:22:30 +0100	[thread overview]
Message-ID: <20250507202230.GA3536142@ax162> (raw)
In-Reply-To: <20250502224156.work.617-kees@kernel.org>

On Fri, May 02, 2025 at 03:41:57PM -0700, Kees Cook wrote:
> Recent fixes to the randstruct GCC plugin allowed it to notice
> that this structure is entirely function pointers and is therefore
> subject to randomization, but doing so requires that it always use
> designated initializers. Explicitly specify the "common" member as being
> initialized. Silences:
> 
> drivers/scsi/qedf/qedf_main.c:702:9: error: positional initialization of field in 'struct' declared with 'designated_init' attribute [-Werror=designated-init]
>   702 |         {
>       |         ^
> 
> Fixes: c2ea09b193d2 ("randstruct: gcc-plugin: Remove bogus void member")

For the record, this is also needed after your recent change to clang to
do the same thing as the plugin:

  drivers/scsi/qedf/qedf_main.c:702:2: error: a randomized struct can only be initialized with a designated initializer
  702 |         {
      |         ^

so this should probably have

  Cc: stable@vger.kernel.org
  Fixes: 035f7f87b729 ("randstruct: Enable Clang support")

> Signed-off-by: Kees Cook <kees@kernel.org>
> ---
> Cc: Saurav Kashyap <skashyap@marvell.com>
> Cc: Javed Hasan <jhasan@marvell.com>
> Cc: <GR-QLogic-Storage-Upstream@marvell.com>
> Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
> Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
> Cc: <linux-scsi@vger.kernel.org>
> ---
>  drivers/scsi/qedf/qedf_main.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/scsi/qedf/qedf_main.c b/drivers/scsi/qedf/qedf_main.c
> index 436bd29d5eba..6b1ebab36fa3 100644
> --- a/drivers/scsi/qedf/qedf_main.c
> +++ b/drivers/scsi/qedf/qedf_main.c
> @@ -699,7 +699,7 @@ static u32 qedf_get_login_failures(void *cookie)
>  }
>  
>  static struct qed_fcoe_cb_ops qedf_cb_ops = {
> -	{
> +	.common = {
>  		.link_update = qedf_link_update,
>  		.bw_update = qedf_bw_update,
>  		.schedule_recovery_handler = qedf_schedule_recovery_handler,
> -- 
> 2.34.1
> 

      parent reply	other threads:[~2025-05-07 20:22 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-02 22:41 [PATCH] scsi: qedf: Use designated initializer for struct qed_fcoe_cb_ops Kees Cook
2025-05-06  2:18 ` Martin K. Petersen
2025-05-07 20:22 ` Nathan Chancellor [this message]

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=20250507202230.GA3536142@ax162 \
    --to=nathan@kernel.org \
    --cc=GR-QLogic-Storage-Upstream@marvell.com \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=broonie@kernel.org \
    --cc=jhasan@marvell.com \
    --cc=kees@kernel.org \
    --cc=linux-hardening@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=linux@treblig.org \
    --cc=martin.petersen@oracle.com \
    --cc=skashyap@marvell.com \
    --cc=wangyuli@uniontech.com \
    /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.