diff options
author | Christoph Hellwig <hch@lst.de> | 2018-11-16 09:10:06 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2018-11-17 07:20:45 -0700 |
commit | f5d72c5c55bc392523cbdcdedd575c280203d31c (patch) | |
tree | 81e181b721b7b23a8468b34eb88ad88219cb4168 /drivers/mmc/core/queue.h | |
parent | f04842734c7a68381ab3cb45628ffb3ff1029490 (diff) | |
download | talos-obmc-linux-f5d72c5c55bc392523cbdcdedd575c280203d31c.tar.gz talos-obmc-linux-f5d72c5c55bc392523cbdcdedd575c280203d31c.zip |
mmc: stop abusing the request queue_lock pointer
Replace the lock in mmc_blk_data that is only used through a pointer
in struct mmc_queue and to protect fields in that structure with
an actual lock in struct mmc_queue.
Suggested-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/mmc/core/queue.h')
-rw-r--r-- | drivers/mmc/core/queue.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mmc/core/queue.h b/drivers/mmc/core/queue.h index 5421f1542e71..fd11491ced9f 100644 --- a/drivers/mmc/core/queue.h +++ b/drivers/mmc/core/queue.h @@ -73,11 +73,11 @@ struct mmc_queue_req { struct mmc_queue { struct mmc_card *card; - spinlock_t *lock; struct mmc_ctx ctx; struct blk_mq_tag_set tag_set; struct mmc_blk_data *blkdata; struct request_queue *queue; + spinlock_t lock; int in_flight[MMC_ISSUE_MAX]; unsigned int cqe_busy; #define MMC_CQE_DCMD_BUSY BIT(0) @@ -96,7 +96,7 @@ struct mmc_queue { struct work_struct complete_work; }; -extern int mmc_init_queue(struct mmc_queue *, struct mmc_card *, spinlock_t *); +extern int mmc_init_queue(struct mmc_queue *, struct mmc_card *); extern void mmc_cleanup_queue(struct mmc_queue *); extern void mmc_queue_suspend(struct mmc_queue *); extern void mmc_queue_resume(struct mmc_queue *); |