在 2022/1/20 18:56, Peter Xu 写道:
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().
Oh, i get it. :)
I just missed the key function kvm_dirty_ring_flush in kvm_dirty_ring_flush.

In short, you shouldn't touch the rest of the kvm_dirty_ring_reap() callers,
they'll always flush all the rings.

But it'll be nicer if you will try it out. :)

Ok, i'll try this out.

--
Best regard

Hyman Huang(黄勇)

Reply via email to