Skip to content

Commit da2edb3

Browse files
Dan Carpenterbebarino
authored andcommitted
clk: bcm: rpi: Fix off by one in raspberrypi_discover_clocks()
Smatch detected an off by one in this code: drivers/clk/bcm/clk-raspberrypi.c:374 raspberrypi_discover_clocks() error: buffer overflow 'data->hws' 16 <= 16 The data->hws[] array has RPI_FIRMWARE_NUM_CLK_ID elements so the > comparison needs to changed to >=. Fixes: 12c90f3 ("clk: bcm: rpi: Add variant structure") Signed-off-by: Dan Carpenter <[email protected]> Link: https://lore.kernel.org/r/[email protected] Reviewed-by: Stefan Wahren <[email protected]> Reviewed-by: Florian Fainelli <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
1 parent a7a0c7d commit da2edb3

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/clk/bcm/clk-raspberrypi.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -356,9 +356,9 @@ static int raspberrypi_discover_clocks(struct raspberrypi_clk *rpi,
356356
while (clks->id) {
357357
struct raspberrypi_clk_variant *variant;
358358

359-
if (clks->id > RPI_FIRMWARE_NUM_CLK_ID) {
359+
if (clks->id >= RPI_FIRMWARE_NUM_CLK_ID) {
360360
dev_err(rpi->dev, "Unknown clock id: %u (max: %u)\n",
361-
clks->id, RPI_FIRMWARE_NUM_CLK_ID);
361+
clks->id, RPI_FIRMWARE_NUM_CLK_ID - 1);
362362
return -EINVAL;
363363
}
364364

0 commit comments

Comments
 (0)