From: Nikita Kiryanov Date: Mon, 3 Dec 2012 02:19:42 +0000 (+0000) Subject: omap_hsmmc: fix out of bounds array access X-Git-Tag: v2013.04-rc2~24^2~51 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=5964dadd0371238cbc91b1c2b6b24fd7d83833d8;p=oweals%2Fu-boot.git omap_hsmmc: fix out of bounds array access There are 3 MMC/SD/SDIO controllers in OMAP SoCs, but only 2 structs are defined for devices. This leads to data being written outside of array bounds on systems that use all 3 controllers. Update hsmmc_dev array to the correct size. Signed-off-by: Nikita Kiryanov --- diff --git a/drivers/mmc/omap_hsmmc.c b/drivers/mmc/omap_hsmmc.c index afd9b30b51..23dcebdfff 100644 --- a/drivers/mmc/omap_hsmmc.c +++ b/drivers/mmc/omap_hsmmc.c @@ -44,7 +44,7 @@ static int mmc_read_data(struct hsmmc *mmc_base, char *buf, unsigned int size); static int mmc_write_data(struct hsmmc *mmc_base, const char *buf, unsigned int siz); -static struct mmc hsmmc_dev[2]; +static struct mmc hsmmc_dev[3]; #if defined(CONFIG_OMAP44XX) && defined(CONFIG_TWL6030_POWER) static void omap4_vmmc_pbias_config(struct mmc *mmc)