Hi Ulf,
here are two cosmetical changes for the reported smatch errors.
Jan Glauber (2):
mmc: cavium: Remove redundant pointer check
mmc: cavium: Check pointer before de-reference
drivers/mmc/host/cavium.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--
2.9.0.rc0.21.g7777322
Add a pointer check to prevent this smatch warning:
drivers/mmc/host/cavium.c:803 cvm_mmc_request()
error: we previously assumed 'cmd->data' could be null (see line 782)
This is a theoretical fix because MMC_CMD_ADTC seems to imply
that cmd->data is not null. Nevertheless checking cmd->data
before using it improves readability.
Signed-off-by: Jan Glauber <[email protected]>
---
drivers/mmc/host/cavium.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/mmc/host/cavium.c b/drivers/mmc/host/cavium.c
index ddf902c..d89c2eb 100644
--- a/drivers/mmc/host/cavium.c
+++ b/drivers/mmc/host/cavium.c
@@ -799,7 +799,7 @@ static void cvm_mmc_request(struct mmc_host *mmc, struct mmc_request *mrq)
FIELD_PREP(MIO_EMM_CMD_IDX, cmd->opcode) |
FIELD_PREP(MIO_EMM_CMD_ARG, cmd->arg);
set_bus_id(&emm_cmd, slot->bus_id);
- if (mmc_cmd_type(cmd) == MMC_CMD_ADTC)
+ if (cmd->data && mmc_cmd_type(cmd) == MMC_CMD_ADTC)
emm_cmd |= FIELD_PREP(MIO_EMM_CMD_OFFSET,
64 - ((cmd->data->blocks * cmd->data->blksz) / 8));
--
2.9.0.rc0.21.g7777322
Remove redundant mmc->card check reported by smatch:
drivers/mmc/host/cavium.c:694 cvm_mmc_dma_request()
warn: variable dereferenced before check 'mmc->card' (see line 675)
Signed-off-by: Jan Glauber <[email protected]>
---
drivers/mmc/host/cavium.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/mmc/host/cavium.c b/drivers/mmc/host/cavium.c
index d842b69..ddf902c 100644
--- a/drivers/mmc/host/cavium.c
+++ b/drivers/mmc/host/cavium.c
@@ -691,7 +691,7 @@ static void cvm_mmc_dma_request(struct mmc_host *mmc,
* bit mask to check for CRC errors and timeouts only.
* Otherwise, use the default power reset value.
*/
- if (mmc->card && mmc_card_sd(mmc->card))
+ if (mmc_card_sd(mmc->card))
writeq(0x00b00000ull, host->base + MIO_EMM_STS_MASK(host));
else
writeq(0xe4390080ull, host->base + MIO_EMM_STS_MASK(host));
--
2.9.0.rc0.21.g7777322
On 13 April 2017 at 14:10, Jan Glauber <[email protected]> wrote:
> Hi Ulf,
>
> here are two cosmetical changes for the reported smatch errors.
>
> Jan Glauber (2):
> mmc: cavium: Remove redundant pointer check
> mmc: cavium: Check pointer before de-reference
>
> drivers/mmc/host/cavium.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> --
> 2.9.0.rc0.21.g7777322
>
Thanks, applied for next!
Kind regards
Uffe