Commit cae0dc9c authored by Jens Axboe's avatar Jens Axboe

[PATCH] honor hard barrier in deadline

Previously, we only honored barriers wrt merging. Really honor them now,
move all pending requests to dispatch list and add the hard barrier at
the back.
parent 20810f64
...@@ -608,6 +608,12 @@ deadline_insert_request(request_queue_t *q, struct request *rq, ...@@ -608,6 +608,12 @@ deadline_insert_request(request_queue_t *q, struct request *rq,
if (unlikely(rq->flags & REQ_HARDBARRIER)) { if (unlikely(rq->flags & REQ_HARDBARRIER)) {
DL_INVALIDATE_HASH(dd); DL_INVALIDATE_HASH(dd);
q->last_merge = NULL; q->last_merge = NULL;
while (deadline_dispatch_requests(dd))
;
list_add_tail(&rq->queuelist, dd->dispatch);
return;
} }
if (unlikely(!blk_fs_request(rq))) { if (unlikely(!blk_fs_request(rq))) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment