aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/mmc/host/tmio_mmc.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/mmc/host/tmio_mmc.c b/drivers/mmc/host/tmio_mmc.c
index 595b7b3f160..f442c8205b0 100644
--- a/drivers/mmc/host/tmio_mmc.c
+++ b/drivers/mmc/host/tmio_mmc.c
@@ -673,8 +673,10 @@ static void tmio_mmc_start_dma_rx(struct tmio_mmc_host *host)
}
if ((!aligned && (host->sg_len > 1 || sg->length > PAGE_CACHE_SIZE ||
- align >= MAX_ALIGN)) || !multiple)
+ align >= MAX_ALIGN)) || !multiple) {
+ ret = -EINVAL;
goto pio;
+ }
/* The only sg element can be unaligned, use our bounce buffer then */
if (!aligned) {
@@ -748,8 +750,10 @@ static void tmio_mmc_start_dma_tx(struct tmio_mmc_host *host)
}
if ((!aligned && (host->sg_len > 1 || sg->length > PAGE_CACHE_SIZE ||
- align >= MAX_ALIGN)) || !multiple)
+ align >= MAX_ALIGN)) || !multiple) {
+ ret = -EINVAL;
goto pio;
+ }
/* The only sg element can be unaligned, use our bounce buffer then */
if (!aligned) {