]> git.proxmox.com Git - mirror_qemu.git/commit
cputlb: Merge and move memory_notdirty_write_{prepare,complete}
authorRichard Henderson <richard.henderson@linaro.org>
Sun, 22 Sep 2019 01:47:59 +0000 (18:47 -0700)
committerRichard Henderson <richard.henderson@linaro.org>
Wed, 25 Sep 2019 17:44:29 +0000 (10:44 -0700)
commit707526ad865dc4064c3984bcc061596a21bf9d3b
tree848c92aa209bbbe42c30801048a82ab593587f76
parent8f5db6415363740d4eac070bb381202c80a7fc34
cputlb: Merge and move memory_notdirty_write_{prepare,complete}

Since 9458a9a1df1a, all readers of the dirty bitmaps wait
for the rcu lock, which means that they wait until the end
of any executing TranslationBlock.

As a consequence, there is no need for the actual access
to happen in between the _prepare and _complete.  Therefore,
we can improve things by merging the two functions into
notdirty_write and dropping the NotDirtyInfo structure.

In addition, the only users of notdirty_write are in cputlb.c,
so move the merged function there.  Pass in the CPUIOTLBEntry
from which the ram_addr_t may be computed.

Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
accel/tcg/cputlb.c
exec.c
include/exec/memory-internal.h