Use flexible array member in ip discovery struct as recommended[1].

[1] 
https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays

Signed-off-by: Lijo Lazar <lijo.la...@amd.com>
---
 v2 : Use struct_size (Christian)

 drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 2 +-
 drivers/gpu/drm/amd/include/discovery.h       | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
index 5a182288391b..766006a075ec 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
@@ -430,7 +430,7 @@ static void amdgpu_discovery_read_harvest_bit_per_ip(struct 
amdgpu_device *adev,
                                 }
                         }
 next_ip:
-                       ip_offset += sizeof(*ip) + 4 * (ip->num_base_address - 
1);
+                       ip_offset += struct_size(ip, base_address, 
ip->num_base_address);
                }
        }
 }
diff --git a/drivers/gpu/drm/amd/include/discovery.h 
b/drivers/gpu/drm/amd/include/discovery.h
index a486769b66c6..b25026c3ec96 100644
--- a/drivers/gpu/drm/amd/include/discovery.h
+++ b/drivers/gpu/drm/amd/include/discovery.h
@@ -93,7 +93,7 @@ typedef struct ip
        uint8_t harvest : 4;      /* Harvest */
        uint8_t reserved : 4;     /* Placeholder field */
 #endif
-       uint32_t base_address[1]; /* variable number of Addresses */
+       uint32_t base_address[]; /* variable number of Addresses */
 } ip;
 
 typedef struct die_header
-- 
2.25.1

Reply via email to