diff options
author | Paolo Valente <paolo.valente@linaro.org> | 2020-03-21 12:45:21 +0300 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-03-21 23:31:03 +0300 |
commit | 4d38a87fbb77fb9ff2ff4e914162a8ae6453eff5 (patch) | |
tree | d99e48a0a8dc3b968ad63f9c165065d648bc8fae /virt | |
parent | 576682fa52cbd95deb3773449566274f206acc58 (diff) | |
download | linux-4d38a87fbb77fb9ff2ff4e914162a8ae6453eff5.tar.xz |
block, bfq: invoke flush_idle_tree after reparent_active_queues in pd_offline
In bfq_pd_offline(), the function bfq_flush_idle_tree() is invoked to
flush the rb tree that contains all idle entities belonging to the pd
(cgroup) being destroyed. In particular, bfq_flush_idle_tree() is
invoked before bfq_reparent_active_queues(). Yet the latter may happen
to add some entities to the idle tree. It happens if, in some of the
calls to bfq_bfqq_move() performed by bfq_reparent_active_queues(),
the queue to move is empty and gets expired.
This commit simply reverses the invocation order between
bfq_flush_idle_tree() and bfq_reparent_active_queues().
Tested-by: cki-project@redhat.com
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'virt')
0 files changed, 0 insertions, 0 deletions