Skip to content

Commit 8e76c9c

Browse files
keesmartinkpetersen
authored andcommitted
scsi: message: fusion: struct _RAID_VOL0_SETTINGS: Replace 1-element array with flexible array
Replace the deprecated[1] use of a 1-element array in struct _RAID_VOL0_SETTINGS with a modern flexible array. Additionally add __counted_by annotation since PhysDisk is only ever accessed via a loops bounded by NumPhysDisks: lsi/mpi_cnfg.h: RAID_VOL0_PHYS_DISK PhysDisk[] __counted_by(NumPhysDisks); /* 28h */ mptbase.c: for (i = 0; i < buffer->NumPhysDisks; i++) { mptbase.c: buffer->PhysDisk[i].PhysDiskNum, &phys_disk) != 0) mptsas.c: for (i = 0; i < buffer->NumPhysDisks; i++) { mptsas.c: buffer->PhysDisk[i].PhysDiskNum, &phys_disk) != 0) mptsas.c: for (i = 0; i < buffer->NumPhysDisks; i++) { mptsas.c: buffer->PhysDisk[i].PhysDiskNum, &phys_disk) != 0) No binary differences are present after this conversion. Link: KSPP#79 [1] Signed-off-by: Kees Cook <kees@kernel.org> Link: https://lore.kernel.org/r/20240711172821.123936-1-kees@kernel.org Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 8400291 commit 8e76c9c

1 file changed

Lines changed: 1 addition & 9 deletions

File tree

drivers/message/fusion/lsi/mpi_cnfg.h

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2295,14 +2295,6 @@ typedef struct _RAID_VOL0_SETTINGS
22952295
#define MPI_RAID_HOT_SPARE_POOL_6 (0x40)
22962296
#define MPI_RAID_HOT_SPARE_POOL_7 (0x80)
22972297

2298-
/*
2299-
* Host code (drivers, BIOS, utilities, etc.) should leave this define set to
2300-
* one and check Header.PageLength at runtime.
2301-
*/
2302-
#ifndef MPI_RAID_VOL_PAGE_0_PHYSDISK_MAX
2303-
#define MPI_RAID_VOL_PAGE_0_PHYSDISK_MAX (1)
2304-
#endif
2305-
23062298
typedef struct _CONFIG_PAGE_RAID_VOL_0
23072299
{
23082300
CONFIG_PAGE_HEADER Header; /* 00h */
@@ -2321,7 +2313,7 @@ typedef struct _CONFIG_PAGE_RAID_VOL_0
23212313
U8 DataScrubRate; /* 25h */
23222314
U8 ResyncRate; /* 26h */
23232315
U8 InactiveStatus; /* 27h */
2324-
RAID_VOL0_PHYS_DISK PhysDisk[MPI_RAID_VOL_PAGE_0_PHYSDISK_MAX];/* 28h */
2316+
RAID_VOL0_PHYS_DISK PhysDisk[] __counted_by(NumPhysDisks); /* 28h */
23252317
} CONFIG_PAGE_RAID_VOL_0, MPI_POINTER PTR_CONFIG_PAGE_RAID_VOL_0,
23262318
RaidVolumePage0_t, MPI_POINTER pRaidVolumePage0_t;
23272319

0 commit comments

Comments
 (0)