lkml.org 
[lkml]   [2019]   [Mar]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2 07/11] staging: mt7621-mmc: Check for nonzero number of scatterlist entries
Date
The buffer descriptor setup loop is correct only if it is setting up at
least one bd struct. Besides, there is an error somewhere if
dma_map_sg() returns 0. So add a paranoid check for this condition.

Signed-off-by: George Hilliard <thirtythreeforty@gmail.com>
---
drivers/staging/mt7621-mmc/sd.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/mt7621-mmc/sd.c b/drivers/staging/mt7621-mmc/sd.c
index c272aa780719..31c5b44bd29f 100644
--- a/drivers/staging/mt7621-mmc/sd.c
+++ b/drivers/staging/mt7621-mmc/sd.c
@@ -593,7 +593,12 @@ static void msdc_dma_setup(struct msdc_host *host, struct msdc_dma *dma,
struct bd *bd;
u32 j;

- BUG_ON(sglen > MAX_BD_NUM); /* not support currently */
+ // Shouldn't happen; we configure the mmc host layer
+ // based on MAX_BD_NUM:
+ BUG_ON(sglen > MAX_BD_NUM);
+ // Correct setup below requires at least one bd
+ // (and dma_map_sg should not return 0):
+ BUG_ON(sglen == 0);

gpd = dma->gpd;
bd = dma->bd;
--
2.21.0
\
 
 \ /
  Last update: 2019-03-19 03:21    [W:0.098 / U:2.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site