Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d16a6766 authored by Jens Axboe's avatar Jens Axboe
Browse files

ide: don't clear special on ide_queue_rq() entry



We can't use RQF_DONTPREP to see if we should clear ->special,
as someone could have set that while inserting the request. Make
sure we clear it in our ->initialize_rq_fn() helper instead.

Fixes: 22ce0a7c ("ide: don't use req->special")
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 628bd859
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -463,11 +463,6 @@ blk_status_t ide_queue_rq(struct blk_mq_hw_ctx *hctx,
	struct request	*rq = bd->rq;
	ide_startstop_t	startstop;

	if (!(rq->rq_flags & RQF_DONTPREP)) {
		rq->rq_flags |= RQF_DONTPREP;
		ide_req(rq)->special = NULL;
	}

	/* HLD do_request() callback might sleep, make sure it's okay */
	might_sleep();

+1 −0
Original line number Diff line number Diff line
@@ -746,6 +746,7 @@ static void ide_initialize_rq(struct request *rq)
{
	struct ide_request *req = blk_mq_rq_to_pdu(rq);

	req->special = NULL;
	scsi_req_init(&req->sreq);
	req->sreq.sense = req->sense;
}