]> git.baikalelectronics.ru Git - kernel.git/commit
block, bfq: split bfq-iosched.c into multiple source files
authorPaolo Valente <paolo.valente@linaro.org>
Wed, 19 Apr 2017 14:48:24 +0000 (08:48 -0600)
committerJens Axboe <axboe@fb.com>
Wed, 19 Apr 2017 14:48:24 +0000 (08:48 -0600)
commit2dd70d1eff26049503cf157dfefd5233cebe9957
tree1e7858910a647ae1a174ad019304bc3ffc2b5926
parent7db55a7a030c5b6a0775c13b9b32e772fd76e9bb
block, bfq: split bfq-iosched.c into multiple source files

The BFQ I/O scheduler features an optimal fair-queuing
(proportional-share) scheduling algorithm, enriched with several
mechanisms to boost throughput and reduce latency for interactive and
real-time applications. This makes BFQ a large and complex piece of
code. This commit addresses this issue by splitting BFQ into three
main, independent components, and by moving each component into a
separate source file:
1. Main algorithm: handles the interaction with the kernel, and
decides which requests to dispatch; it uses the following two further
components to achieve its goals.
2. Scheduling engine (Hierarchical B-WF2Q+ scheduling algorithm):
computes the schedule, using weights and budgets provided by the above
component.
3. cgroups support: handles group operations (creation, destruction,
move, ...).

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/Makefile
block/bfq-cgroup.c [new file with mode: 0644]
block/bfq-iosched.c
block/bfq-iosched.h [new file with mode: 0644]
block/bfq-wf2q.c [new file with mode: 0644]