From: Christian Lütke-Stetzkamp Date: Tue, 24 Apr 2018 18:01:22 +0000 (+0200) Subject: staging: mt7621-mmc: Fix dereference before check in msdc_drv_pm X-Git-Tag: microblaze-v4.18-rc3~25^2~555 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=afcc0ca1c854e8fbed59ec61b2535962a1af6571;p=linux-2.6-microblaze.git staging: mt7621-mmc: Fix dereference before check in msdc_drv_pm In the msdc_drv_pm function the variable mmc is dereferenced before checked. Reordering fixes that. Reported-by: Dan Carpenter Signed-off-by: Christian Lütke-Stetzkamp Reviewed-by: NeilBrown Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/mt7621-mmc/sd.c b/drivers/staging/mt7621-mmc/sd.c index 7f6e584c7836..a3e2c9769591 100644 --- a/drivers/staging/mt7621-mmc/sd.c +++ b/drivers/staging/mt7621-mmc/sd.c @@ -2709,10 +2709,10 @@ static int msdc_drv_remove(struct platform_device *pdev) static void msdc_drv_pm(struct platform_device *pdev, pm_message state) { struct mmc_host *mmc = platform_get_drvdata(pdev); - struct msdc_host *host = mmc_priv(mmc); - - if (mmc) + if (mmc) { + struct msdc_host *host = mmc_priv(mmc); msdc_pm(state, (void *)host); + } } static int msdc_drv_suspend(struct platform_device *pdev, pm_message_t state)