sandbox: mmc: Start off with a zeroed file
authorSimon Glass <sjg@chromium.org>
Tue, 17 Jan 2023 17:47:19 +0000 (10:47 -0700)
committerTom Rini <trini@konsulko.com>
Mon, 23 Jan 2023 23:11:39 +0000 (18:11 -0500)
When running multiple tests the mmc emulator calls malloc() to obtain the
memory for its disk image. Since the memory is not cleared, it is possible
that it happens to contain a partition table.

The dm_test_part() test (for one) relies on mmc0 being empty on startup.
Zero the memory to ensure that it is.

Signed-off-by: Simon Glass <sjg@chromium.org>
drivers/mmc/sandbox_mmc.c

index ba79a55..0ba7940 100644 (file)
@@ -183,7 +183,7 @@ static int sandbox_mmc_probe(struct udevice *dev)
                priv->csize = 0;
                priv->size = (priv->csize + 1) * SIZE_MULTIPLE; /* 1 MiB */
 
-               priv->buf = malloc(priv->size);
+               priv->buf = calloc(1, priv->size);
                if (!priv->buf) {
                        log_err("%s: Not enough memory (%x bytes)\n",
                                dev->name, priv->size);