On Thu, Jan 20, 2022 at 06:39:01PM +0800, Hyman Huang wrote:
It only runs once per second so it shouldn't bring a lot of differences, but
I'm also wondering whether we should also turn that temporarily off too when
dirtylimit is enabled - we can simply let it keep sleeping if dirtylimit is in
service.
Does this work ok when dirtylimit and migration happens concurrently?
Migration may fetch the aged dirty bitmap info from slot if we turn reaper
thread off. As you metioned above, reaper thread only runs once per second.
Is it more suitable for not touching the reaper thread logic?
Yes I think it'll still work, as migration will do explicit sync/collect after
each iteration. See kvm_dirty_ring_flush().