On 06.08.25 18:43, Andrew Goodbody wrote:
The limit checks in get_speed_string and get_type_string are off by 1 as
they do not account for the maximum index into an array that can be used
is 1 less than the number of elements in that array. Adjust the limit
checks to allow for this.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodb...@linaro.org>

Reviewed-by: Stefan Roese <stefan.ro...@mailbox.org>

Thanks,
Stefan

---
  drivers/phy/marvell/comphy_core.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/phy/marvell/comphy_core.c 
b/drivers/phy/marvell/comphy_core.c
index a666a4e794e..a4121423873 100644
--- a/drivers/phy/marvell/comphy_core.c
+++ b/drivers/phy/marvell/comphy_core.c
@@ -28,7 +28,7 @@ static const char *get_speed_string(u32 speed)
                "10.3125 Gbps"
        };
- if (speed < 0 || speed > COMPHY_SPEED_MAX)
+       if (speed < 0 || speed >= COMPHY_SPEED_MAX)
                return "invalid";
return speed_strings[speed];
@@ -44,7 +44,7 @@ static const char *get_type_string(u32 type)
                "IGNORE"
        };
- if (type < 0 || type > COMPHY_TYPE_MAX)
+       if (type < 0 || type >= COMPHY_TYPE_MAX)
                return "invalid";
return type_strings[type];


Reply via email to