* [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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox