linux-mmc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dan Carpenter <dan.carpenter@oracle.com>
To: micky_ching@realsil.com.cn
Cc: linux-mmc@vger.kernel.org
Subject: re: mmc: rtsx: add support for pre_req and post_req
Date: Tue, 25 Feb 2014 01:03:28 +0300	[thread overview]
Message-ID: <20140224220328.GA29170@elgon.mountain> (raw)

Hello Micky Ching,

This is a semi-automatic email about new static checker warnings.

The patch c42deffd5b53: "mmc: rtsx: add support for pre_req and 
post_req" from Feb 17, 2014, leads to the following Smatch complaint:

drivers/mmc/host/rtsx_pci_sdmmc.c:194 sd_finish_request()
	 error: we previously assumed 'mrq' could be null (see line 158)

drivers/mmc/host/rtsx_pci_sdmmc.c
   157		mrq = host->mrq;
   158		if (!mrq) {
                    ^^^^
Patch introduces check.

   159			dev_err(sdmmc_dev(host), "error: no request need finish\n");
   160			goto out;
   161		}
   162	
   163		cmd = mrq->cmd;
   164		data = mrq->data;
   165	
   166		any_error = (mrq->sbc && mrq->sbc->error) ||
   167			(mrq->stop && mrq->stop->error) ||
   168			(cmd && cmd->error) || (data && data->error);
   169	
   170		if (any_error) {
   171			rtsx_pci_stop_cmd(pcr);
   172			sd_clear_error(host);
   173		}
   174	
   175		if (data) {
   176			if (any_error)
   177				data->bytes_xfered = 0;
   178			else
   179				data->bytes_xfered = data->blocks * data->blksz;
   180	
   181			if (!data->host_cookie)
   182				rtsx_pci_dma_unmap_sg(pcr, data->sg, data->sg_len,
   183						data->flags & MMC_DATA_READ);
   184	
   185		}
   186	
   187		host->mrq = NULL;
   188		host->cmd = NULL;
   189		host->data = NULL;
   190	
   191	out:
   192		spin_unlock_irqrestore(&host->lock, flags);
   193		mutex_unlock(&pcr->pcr_mutex);
   194		mmc_request_done(host->mmc, mrq);
                                            ^^^
Dereferenced inside function.  Patch introduces dereference.

   195	}
   196	

regards,
dan carpenter

             reply	other threads:[~2014-02-24 22:03 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-24 22:03 Dan Carpenter [this message]
2014-02-25  1:52 ` mmc: rtsx: add support for pre_req and post_req micky
2014-02-25  7:59   ` Dan Carpenter
  -- strict thread matches above, loose matches on Subject: below --
2014-02-24 22:03 Dan Carpenter
2014-02-28 20:35 Dan Carpenter
2014-03-03  1:13 ` micky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140224220328.GA29170@elgon.mountain \
    --to=dan.carpenter@oracle.com \
    --cc=linux-mmc@vger.kernel.org \
    --cc=micky_ching@realsil.com.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).