diff options
author | Franck Jullien <franck.jullien@gmail.com> | 2013-07-24 15:17:48 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-10-13 18:14:32 -0700 |
commit | 4bb5b1a014026ff17f88e0cbb9e21fb6a0869e6d (patch) | |
tree | c44caa275df7bb46f31a31a3f2d442305be4a19b /drivers | |
parent | 6f94b7b0a15c04649b67135c7edaaeb591131e8f (diff) |
mmc: fix null pointer use in mmc_blk_remove_req
commit 8efb83a2f8518a6ffcc074177f8d659c5165ef37 upstream.
A previous commit (fdfa20c1631210d0) reordered the shutdown sequence
in mmc_blk_remove_req. However, mmc_cleanup_queue is now called before
we get the card pointer, and mmc_cleanup_queue sets mq->card to NULL.
This patch moves the card pointer assignment before mmc_cleanup_queue.
Signed-off-by: Franck Jullien <franck.jullien@gmail.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/mmc/card/block.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c index cd0b7f4a1ff2..f4a0beac9d36 100644 --- a/drivers/mmc/card/block.c +++ b/drivers/mmc/card/block.c @@ -2191,10 +2191,10 @@ static void mmc_blk_remove_req(struct mmc_blk_data *md) * is freeing the queue that stops new requests * from being accepted. */ + card = md->queue.card; mmc_cleanup_queue(&md->queue); if (md->flags & MMC_BLK_PACKED_CMD) mmc_packed_clean(&md->queue); - card = md->queue.card; if (md->disk->flags & GENHD_FL_UP) { device_remove_file(disk_to_dev(md->disk), &md->force_ro); if ((md->area_type & MMC_BLK_DATA_AREA_BOOT) && |