diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2013-08-23 12:23:43 +0300 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2013-08-25 16:23:32 +0530 |
commit | 5be2190af4b03be5959684f7336c8da62606809e (patch) | |
tree | 64ed977ea37d45c39c52ad61ae60bab3f27825a3 | |
parent | 3a919d5b43e459517492eb0f664b120877dfdd79 (diff) |
dmaengine: ste_dma40: off by one in d40_of_probe()
If "num_disabled" is equal to STEDMA40_MAX_PHYS (32) then we would write
one space beyond the end of the pdata->disable_channels[] array.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
-rw-r--r-- | drivers/dma/ste_dma40.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c index 7c268b96e760..7bbcabbc282a 100644 --- a/drivers/dma/ste_dma40.c +++ b/drivers/dma/ste_dma40.c @@ -3516,7 +3516,7 @@ static int __init d40_of_probe(struct platform_device *pdev, list = of_get_property(np, "disabled-channels", &num_disabled); num_disabled /= sizeof(*list); - if (num_disabled > STEDMA40_MAX_PHYS || num_disabled < 0) { + if (num_disabled >= STEDMA40_MAX_PHYS || num_disabled < 0) { d40_err(&pdev->dev, "Invalid number of disabled channels specified (%d)\n", num_disabled); |