* [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.