#include <linux/smp.h>
 #include <linux/interrupt.h>
 #include <linux/llist.h>
-#include <linux/list_sort.h>
 #include <linux/cpu.h>
 #include <linux/cache.h>
 #include <linux/sched/sysctl.h>
        spin_unlock(&ctx->lock);
 }
 
-static int plug_rq_cmp(void *priv, const struct list_head *a,
-                      const struct list_head *b)
-{
-       struct request *rqa = container_of(a, struct request, queuelist);
-       struct request *rqb = container_of(b, struct request, queuelist);
-
-       if (rqa->mq_ctx != rqb->mq_ctx)
-               return rqa->mq_ctx > rqb->mq_ctx;
-       if (rqa->mq_hctx != rqb->mq_hctx)
-               return rqa->mq_hctx > rqb->mq_hctx;
-
-       return blk_rq_pos(rqa) > blk_rq_pos(rqb);
-}
-
 void blk_mq_flush_plug_list(struct blk_plug *plug, bool from_schedule)
 {
        LIST_HEAD(list);
        if (list_empty(&plug->mq_list))
                return;
        list_splice_init(&plug->mq_list, &list);
-
-       if (plug->rq_count > 2 && plug->multiple_queues)
-               list_sort(NULL, &list, plug_rq_cmp);
-
        plug->rq_count = 0;
 
        do {