ide: don't acquire queue lock in ide_pm_execute_rq
authorChristoph Hellwig <hch@lst.de>
Fri, 16 Nov 2018 08:10:04 +0000 (09:10 +0100)
committerJens Axboe <axboe@kernel.dk>
Fri, 16 Nov 2018 16:17:00 +0000 (09:17 -0700)
There is nothing we can synchronize against over a call to
blk_queue_dying.

Reviewed-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/ide/ide-pm.c

index 51fe10ac02fa2cbb6613b47ac0fcba765c07ac5c..56690f52310042aaf0ed3733bcf5d339bf0abacb 100644 (file)
@@ -44,15 +44,12 @@ static int ide_pm_execute_rq(struct request *rq)
 {
        struct request_queue *q = rq->q;
 
-       spin_lock_irq(&q->queue_lock);
        if (unlikely(blk_queue_dying(q))) {
                rq->rq_flags |= RQF_QUIET;
                scsi_req(rq)->result = -ENXIO;
-               spin_unlock_irq(&q->queue_lock);
                blk_mq_end_request(rq, BLK_STS_OK);
                return -ENXIO;
        }
-       spin_unlock_irq(&q->queue_lock);
        blk_execute_rq(q, NULL, rq, true);
 
        return scsi_req(rq)->result ? -EIO : 0;