[PATCH v3][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings

Gustavo A. R. Silva posted 1 patch 3 weeks, 3 days ago
drivers/scsi/pm8001/pm8001_hwi.h | 4 +++-
drivers/scsi/pm8001/pm80xx_hwi.h | 4 +++-
2 files changed, 6 insertions(+), 2 deletions(-)
[PATCH v3][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
Posted by Gustavo A. R. Silva 3 weeks, 3 days ago
Comment out 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]

Reviewed-by: Jack Wang <jinpu.wang@ionos.com>
Reviewed-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
---
Changes in v3:
 - Comment out unused field instead of removing it. (John Garry)
 - Update changelog text.
 - Add RB tags.

Changes in v2:
 - Remove unused field residual_count. (James)
 - Link: https://lore.kernel.org/linux-hardening/aLmoE8CznVPres5r@kspp/

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

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

diff --git a/drivers/scsi/pm8001/pm8001_hwi.h b/drivers/scsi/pm8001/pm8001_hwi.h
index fc2127dcb58d..f1ce8df082b0 100644
--- a/drivers/scsi/pm8001/pm8001_hwi.h
+++ b/drivers/scsi/pm8001/pm8001_hwi.h
@@ -339,8 +339,10 @@ 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;
+	/* __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..d8a63b7fed6a 100644
--- a/drivers/scsi/pm8001/pm80xx_hwi.h
+++ b/drivers/scsi/pm8001/pm80xx_hwi.h
@@ -558,8 +558,10 @@ 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;
+	/* __le32  residual_count; */
 } __attribute__((packed, aligned(4)));
 
 #define SSP_RESCV_BIT	0x00010000
-- 
2.43.0
Re: [PATCH v3][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
Posted by Martin K. Petersen 2 weeks, 1 day ago
On Mon, 08 Sep 2025 20:42:01 +0200, Gustavo A. R. Silva wrote:

> Comment out 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]
> 
> [...]

Applied to 6.18/scsi-queue, thanks!

[1/1] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
      https://git.kernel.org/mkp/scsi/c/508e754c6931

-- 
Martin K. Petersen
Re: [PATCH v3][next] scsi: pm80xx: Avoid -Wflex-array-member-not-at-end warnings
Posted by Martin K. Petersen 3 weeks, 1 day ago
Gustavo,

> Comment out 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]

Applied to 6.18/scsi-staging, thanks!

-- 
Martin K. Petersen