All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
@ 2025-09-04 14:54 Gustavo A. R. Silva
  2025-09-05  6:15 ` Jinpu Wang
  2025-09-05  7:05 ` John Garry
  0 siblings, 2 replies; 4+ messages in thread
From: Gustavo A. R. Silva @ 2025-09-04 14:54 UTC (permalink / raw)
  To: Jack Wang, James E.J. Bottomley, Martin K. Petersen
  Cc: linux-scsi, linux-kernel, Gustavo A. R. Silva, linux-hardening

Remove unused field residual_count in a couple of structures,
and with this, fix the following -Wflex-array-member-not-at-end
warnings:

drivers/scsi/pm8001/pm8001_hwi.h:342:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end]
drivers/scsi/pm8001/pm80xx_hwi.h:561:32: 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@kernel.org>
---
Changes in v2:
 - Remove unused field residual_count. (James)

v1:
 - Link: https://lore.kernel.org/linux-hardening/aLiMoNzLs1_bu4eJ@kspp/

 drivers/scsi/pm8001/pm8001_hwi.h | 3 ++-
 drivers/scsi/pm8001/pm80xx_hwi.h | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/pm8001/pm8001_hwi.h b/drivers/scsi/pm8001/pm8001_hwi.h
index fc2127dcb58d..170853dbf952 100644
--- a/drivers/scsi/pm8001/pm8001_hwi.h
+++ b/drivers/scsi/pm8001/pm8001_hwi.h
@@ -339,8 +339,9 @@ struct ssp_completion_resp {
 	__le32	status;
 	__le32	param;
 	__le32	ssptag_rescv_rescpad;
+
+	/* Must be last --ends in a flexible-array member. */
 	struct ssp_response_iu  ssp_resp_iu;
-	__le32	residual_count;
 } __attribute__((packed, aligned(4)));
 
 
diff --git a/drivers/scsi/pm8001/pm80xx_hwi.h b/drivers/scsi/pm8001/pm80xx_hwi.h
index eb8fd37b2066..b13d42701b1b 100644
--- a/drivers/scsi/pm8001/pm80xx_hwi.h
+++ b/drivers/scsi/pm8001/pm80xx_hwi.h
@@ -558,8 +558,9 @@ struct ssp_completion_resp {
 	__le32	status;
 	__le32	param;
 	__le32	ssptag_rescv_rescpad;
+
+	/* Must be last --ends in a flexible-array member. */
 	struct ssp_response_iu ssp_resp_iu;
-	__le32	residual_count;
 } __attribute__((packed, aligned(4)));
 
 #define SSP_RESCV_BIT	0x00010000
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
  2025-09-04 14:54 [PATCH v2][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings Gustavo A. R. Silva
@ 2025-09-05  6:15 ` Jinpu Wang
  2025-09-05  7:05 ` John Garry
  1 sibling, 0 replies; 4+ messages in thread
From: Jinpu Wang @ 2025-09-05  6:15 UTC (permalink / raw)
  To: Gustavo A. R. Silva
  Cc: Jack Wang, James E.J. Bottomley, Martin K. Petersen, linux-scsi,
	linux-kernel, linux-hardening

On Thu, Sep 4, 2025 at 4:54 PM Gustavo A. R. Silva
<gustavoars@kernel.org> wrote:
>
> Remove unused field residual_count in a couple of structures,
> and with this, fix the following -Wflex-array-member-not-at-end
> warnings:
>
> drivers/scsi/pm8001/pm8001_hwi.h:342:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end]
> drivers/scsi/pm8001/pm80xx_hwi.h:561:32: 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@kernel.org>
oh, indeed, v1 is wrong, and v2 is right fix.
Reviewed-by: Jack Wang <jinpu.wang@ionos.com>
> ---
> Changes in v2:
>  - Remove unused field residual_count. (James)
>
> v1:
>  - Link: https://lore.kernel.org/linux-hardening/aLiMoNzLs1_bu4eJ@kspp/
>
>  drivers/scsi/pm8001/pm8001_hwi.h | 3 ++-
>  drivers/scsi/pm8001/pm80xx_hwi.h | 3 ++-
>  2 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/scsi/pm8001/pm8001_hwi.h b/drivers/scsi/pm8001/pm8001_hwi.h
> index fc2127dcb58d..170853dbf952 100644
> --- a/drivers/scsi/pm8001/pm8001_hwi.h
> +++ b/drivers/scsi/pm8001/pm8001_hwi.h
> @@ -339,8 +339,9 @@ struct ssp_completion_resp {
>         __le32  status;
>         __le32  param;
>         __le32  ssptag_rescv_rescpad;
> +
> +       /* Must be last --ends in a flexible-array member. */
>         struct ssp_response_iu  ssp_resp_iu;
> -       __le32  residual_count;
>  } __attribute__((packed, aligned(4)));
>
>
> diff --git a/drivers/scsi/pm8001/pm80xx_hwi.h b/drivers/scsi/pm8001/pm80xx_hwi.h
> index eb8fd37b2066..b13d42701b1b 100644
> --- a/drivers/scsi/pm8001/pm80xx_hwi.h
> +++ b/drivers/scsi/pm8001/pm80xx_hwi.h
> @@ -558,8 +558,9 @@ struct ssp_completion_resp {
>         __le32  status;
>         __le32  param;
>         __le32  ssptag_rescv_rescpad;
> +
> +       /* Must be last --ends in a flexible-array member. */
>         struct ssp_response_iu ssp_resp_iu;
> -       __le32  residual_count;
>  } __attribute__((packed, aligned(4)));
>
>  #define SSP_RESCV_BIT  0x00010000
> --
> 2.43.0
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
  2025-09-04 14:54 [PATCH v2][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings Gustavo A. R. Silva
  2025-09-05  6:15 ` Jinpu Wang
@ 2025-09-05  7:05 ` John Garry
  2025-09-08 18:30   ` Gustavo A. R. Silva
  1 sibling, 1 reply; 4+ messages in thread
From: John Garry @ 2025-09-05  7:05 UTC (permalink / raw)
  To: Gustavo A. R. Silva, Jack Wang, James E.J. Bottomley,
	Martin K. Petersen
  Cc: linux-scsi, linux-kernel, linux-hardening

On 04/09/2025 15:54, Gustavo A. R. Silva wrote:
> Remove unused field residual_count in a couple of structures,
> and with this, fix the following -Wflex-array-member-not-at-end
> warnings:
> 
> drivers/scsi/pm8001/pm8001_hwi.h:342:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end]
> drivers/scsi/pm8001/pm80xx_hwi.h:561:32: 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@kernel.org>

Personally I think that it would be better to comment-out the 
residual_count member, so that future developers can know about this 
field and why it is not there.

Anyway,

Reviewed-by: John Garry <john.g.garry@oracle.com>

> ---
> Changes in v2:
>   - Remove unused field residual_count. (James)
> 
> v1:
>   - Link: https://urldefense.com/v3/__https://lore.kernel.org/linux-hardening/aLiMoNzLs1_bu4eJ@kspp/__;!!ACWV5N9M2RV99hQ!OLkXLNymYqQz8gxMAEHXcks7WQ22V0FhWPT1wD58j2Zoq0rgh_0zDnxZnBV0wK-FEGTDmnSbCMbqSVJGScIysEk$
> 
>   drivers/scsi/pm8001/pm8001_hwi.h | 3 ++-
>   drivers/scsi/pm8001/pm80xx_hwi.h | 3 ++-
>   2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/pm8001/pm8001_hwi.h b/drivers/scsi/pm8001/pm8001_hwi.h
> index fc2127dcb58d..170853dbf952 100644
> --- a/drivers/scsi/pm8001/pm8001_hwi.h
> +++ b/drivers/scsi/pm8001/pm8001_hwi.h
> @@ -339,8 +339,9 @@ struct ssp_completion_resp {
>   	__le32	status;
>   	__le32	param;
>   	__le32	ssptag_rescv_rescpad;
> +
> +	/* Must be last --ends in a flexible-array member. */
>   	struct ssp_response_iu  ssp_resp_iu;
> -	__le32	residual_count;
>   } __attribute__((packed, aligned(4)));
>   
>   
> diff --git a/drivers/scsi/pm8001/pm80xx_hwi.h b/drivers/scsi/pm8001/pm80xx_hwi.h
> index eb8fd37b2066..b13d42701b1b 100644
> --- a/drivers/scsi/pm8001/pm80xx_hwi.h
> +++ b/drivers/scsi/pm8001/pm80xx_hwi.h
> @@ -558,8 +558,9 @@ struct ssp_completion_resp {
>   	__le32	status;
>   	__le32	param;
>   	__le32	ssptag_rescv_rescpad;
> +
> +	/* Must be last --ends in a flexible-array member. */
>   	struct ssp_response_iu ssp_resp_iu;
> -	__le32	residual_count;
>   } __attribute__((packed, aligned(4)));
>   
>   #define SSP_RESCV_BIT	0x00010000


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
  2025-09-05  7:05 ` John Garry
@ 2025-09-08 18:30   ` Gustavo A. R. Silva
  0 siblings, 0 replies; 4+ messages in thread
From: Gustavo A. R. Silva @ 2025-09-08 18:30 UTC (permalink / raw)
  To: John Garry, Gustavo A. R. Silva, Jack Wang, James E.J. Bottomley,
	Martin K. Petersen
  Cc: linux-scsi, linux-kernel, linux-hardening



On 9/5/25 09:05, John Garry wrote:
> On 04/09/2025 15:54, Gustavo A. R. Silva wrote:
>> Remove unused field residual_count in a couple of structures,
>> and with this, fix the following -Wflex-array-member-not-at-end
>> warnings:
>>
>> drivers/scsi/pm8001/pm8001_hwi.h:342:33: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member- 
>> not-at-end]
>> drivers/scsi/pm8001/pm80xx_hwi.h:561:32: 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@kernel.org>
> 
> Personally I think that it would be better to comment-out the residual_count member, so that future developers can know about this field and why it is not there.

I agree. I'll send v3.

> 
> Anyway,
> 
> Reviewed-by: John Garry <john.g.garry@oracle.com>

Thanks!
-Gustavo


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-09-08 18:31 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-04 14:54 [PATCH v2][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings Gustavo A. R. Silva
2025-09-05  6:15 ` Jinpu Wang
2025-09-05  7:05 ` John Garry
2025-09-08 18:30   ` Gustavo A. R. Silva

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.