On Wed, 17 Nov 2021 17:39:59 +0000, David Woodhouse <dw...@infradead.org> wrote: > > From: David Woodhouse <d...@amazon.co.uk> > > The kvm_dirty_ring_get() function uses kvm_get_running_vcpu() to work out > which dirty ring to use, but there are some use cases where that doesn't > work. > > There's one in setting the Xen shared info page, introduced in commit > 629b5348841a ("KVM: x86/xen: update wallclock region") and reported by > "butt3rflyh4ck" <butterflyhuan...@gmail.com> in > https://lore.kernel.org/kvm/cafco6xomos7eacn_n6v4txk7xl7iqra2gabg3f7e3naf5ug...@mail.gmail.com/ > > There's also about to be another one when the newly-reintroduced > gfn_to_pfn_cache needs to mark a page as dirty from the MMU notifier > which invalidates the mapping. In that case, we will *know* the vcpu > that can be 'blamed' for dirtying the page, and we just need to be > able to pass it in as an explicit argument when doing so. > > This patch preemptively resolves the second issue, and paves the way > for resolving the first. A complete fix for the first issue will need > us to switch the Xen shinfo to be owned by a particular vCPU, which > will happen in a separate patch. > > Signed-off-by: David Woodhouse <d...@amazon.co.uk> > --- > arch/arm64/kvm/mmu.c | 2 +- > arch/x86/kvm/mmu/mmu.c | 2 +- > arch/x86/kvm/mmu/spte.c | 2 +- > arch/x86/kvm/mmu/tdp_mmu.c | 2 +- > arch/x86/kvm/x86.c | 4 ++-- > include/linux/kvm_dirty_ring.h | 6 ++++-- > include/linux/kvm_host.h | 3 ++- > virt/kvm/dirty_ring.c | 8 ++++++-- > virt/kvm/kvm_main.c | 18 +++++++++--------- > 9 files changed, 27 insertions(+), 20 deletions(-)
What's the base for this series? This patch fails to compile for me (at least on arm64), and the following patch doesn't apply on -rc1. Thanks, M. -- Without deviation from the norm, progress is not possible.