* b5a6a8d1a681 4.16.2-xanmod4 * 75db9efbf861 Tag PDS 0.98n * 676486405914 pds: Optimize pds_load_balance(). * 9e7976e095cb pds: Code cleanup. * 11089e22101b pds: Optimize scheduler_tick() and pds_sg_balance(). * 1ae369e0f151 pds: Migrate max SCHED_RQ_NR_MIGRATION tasks to empty rq at a time. * 65508afa7e2b elevator: set bfq-mq instead of bfq (mainline) * 69a138d6eefe block, bfq-sq, bfq-mq: lower-bound the estimated peak rate to 1 * 89a4686aa8ce bfq-sq, bfq-mq: port of "block, bfq: fix error handle in bfq_init" * b53ac1db6708 bfq-sq, bfq-mq: port of "bfq: Use icq_to_bic() consistently" * 07b2c4ceb835 bfq-mq: port of "block, bfq: remove batches of confusing ifdefs" * 489d6ba47524 block, bfq-mq, bfq-sq: make bfq_bfqq_expire print expiration reason * 3fbe84a9d5ba block, bfq-mq, bfq-sq: make log functions print names of calling functions * de7787b54ffd block, bfq-mq: add requeue-request hook * 10c366a958fa block, bfq-sq, bfq-mq: remove trace_printks * f43ec49c0914 bfq-sq, bfq-mq: compile group put for oom queue only if BFQ_GROUP_IOSCHED is set * f080854651a2 block, bfq-sq, bfq-mq: trace get and put of bfq groups * 5217a18eff28 bfq-sq, bfq-mq: release oom-queue ref to root group on exit * 30e6f63b4cf9 bfq-sq, bfq-mq: put async queues for root bfq groups too * 26a342ca170f bfq-sq, bfq-mq: limit sectors served with interactive weight raising * 835476c491ab block, bfq-mq: limit tags for writes and async I/O * 381657acc3d7 block, bfq-sq, bfq-mq: specify usage condition of delta_us in bfq_log_bfqq call * f2ed7bab2114 block, bfq-sq, bfq-mq: increase threshold to deem I/O as random * 0ca16110f19e block, bfq-sq, bfq-mq: remove superfluous check in queue-merging setup * 5dc48d90c68e block, bfq-sq, bfq-mq: let a queue be merged only shortly after starting I/O * 46ce0cab1c4f block, bfq-sq, bfq-mq: check low_latency flag in bfq_bfqq_save_state() * ae29ae99e23b block, bfq-sq, bfq-mq: add missing rq_pos_tree update on rq removal * 6c68a1eaa33b block, bfq-mq: fix occurrences of request prepare/finish methods' old names * cd9a1069d2b7 block, bfq-sq, bfq-mq: consider also past I/O in soft real-time detection * 47b8e103d248 block, bfq-mq: turn BUG_ON on request-size into WARN_ON * 5f6d39d6a993 block, bfq-sq, bfq-mq: move debug blkio stats behind CONFIG_DEBUG_BLK_CGROUP * e2e9dc51e027 block, bfq-mq: update blkio stats outside the scheduler lock * dc032e32e9fb block, bfq-mq: add missing invocations of bfqg_stats_update_io_add/remove * 3789b09e981f doc, block, bfq-mq: update max IOPS sustainable with BFQ * 6de745c4f706 bfq-sq, bfq-mq: fix unbalanced decrements of burst size * 6ce79f28f5a2 bfq-sq, bfq-mq: decrease burst size when queues in burst exit * 2423ae752292 bfq-sq, bfq-mq: let early-merged queues be weight-raised on split too * 6fa9ada0547c bfq-sq, bfq-mq: check and switch back to interactive wr also on queue split * 39e65b374475 Fix commit "Unnest request-queue and ioc locks from scheduler locks" * 5c21add0b985 bfq-mq, bfq-sq: fix wrong init of saved start time for weight raising * 47bb6da80b79 bfq-mq, bfq-sq: Disable writeback throttling * 30f77b90f9ce doc, block, bfq: fix some typos and stale sentences * a8e82c7dce81 bfq-sq-mq: guarantee update_next_in_service always returns an eligible entity * 9c28595fce38 bfq-sq-mq: remove direct switch to an entity in higher class * 6fc422923e6d bfq-sq-mq: make lookup_next_entity push up vtime on expirations * 8b3c6923d27f bfq-sq: fix commit "Remove all get and put of I/O contexts" in branch bfq-mq * 1b1395aa094d Improve most frequently used no-logging path * 477ffebed78e Add to documentation that bfq-mq and bfq-sq contain last fixes too * ad625152bce0 bfq-sq: fix prefix of names of cgroups parameters * dbe510d28da6 Add list of bfq instances to documentation * 6a3308a40533 Port of "blk-mq-sched: unify request prepare methods" * bef6a9869bfd Port of "bfq-iosched: fix NULL ioc check in bfq_get_rq_private" * f8b456c93020 Port of "blk-mq-sched: unify request finished methods" * a60da208da5e bfq-mq: fix macro name in conditional invocation of policy_unregister * edcf696573fd block, bfq-mq: access and cache blkg data only when safe * c0c5d1b59eb8 Add tentative extra tests on groups, reqs and queues * 78fa4c2bf53d Change cgroup params prefix to bfq-mq for bfq-mq * 1a9eba362e36 Fix wrong unlikely * 0a062b83e7c9 BUGFIX: Remove unneeded and deadlock-causing lock in request_merged * 71f6e5028a42 Remove all get and put of I/O contexts * 4f2fc648798a Complete support for cgroups * 0175d54c60c1 TESTING: Check wrong invocation of merge and put_rq_priv functions * b25f3dc28b9c Add checks and extra log messages - Part III * e744879f394b Fix unbalanced increment of rq_in_driver * e51e6ed1f65d Add checks and extra log messages - Part II * 873fa39c0f44 Unnest request-queue and ioc locks from scheduler locks * 15b3fa6a425b bfq-mq: execute exit_icq operations immediately * 6e412ac9dc58 Add lock check in bfq_allow_bio_merge * d75fdb7885df Add checks and extra log messages - Part I * 6b1d3bf5dc65 Modify interface and operation to comply with blk-mq-sched * 63cd762262ac Embed bfq-ioc.c and add locking on request queue * e3e819451e1f Move thinktime from bic to bfqq * f37f719fb13a Copy header file bfq.h as bfq-mq.h * 474cfdc7778c Increase max policies for io controller * ecd765f72cbe Add config and build bits for bfq-mq-iosched * 047dc7340016 FIRST BFQ-MQ COMMIT: Copy bfq-sq-iosched.c as bfq-mq-iosched.c * 8d123e4d8392 block, bfq: improve and refactor throughput-boosting logic * a503694a6137 block, bfq: consider also in_service_entity to state whether an entity is active * 5f051579fde6 block, bfq: reset in_service_entity if it becomes idle * ac20910651b5 Add extra checks related to entity scheduling * 383e5b2ddbdb Add BFQ-v8r12