Re: [PATCH v7 5/9] KVM: arm64: Improve no-running-vcpu report for dirty ring

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 31 Oct 2022 23:08:32 +0000,
Gavin Shan <gshan@xxxxxxxxxx> wrote:
> 
>
> In order to cover Marc's concern, I would introduce a different helper
> kvm_vgic_save_its_tables_in_progress(), which simply returns
> 'bool struct vgic_dist::save_its_tables_in_progress'. The newly added
> field is set and cleared in vgic_its_ctrl(). All these changes will be
> folded to PATCH[v7 6/9]. Oliver and Marc, could you please let me know
> if the changes sounds good?
> 
>    static int vgic_its_ctrl(struct kvm *kvm, struct vgic_its *its, u64 attr)
>    {
>        const struct vgic_its_abi *abi = vgic_its_get_abi(its);
>        struct vgic_dist *dist = &kvm->arch.vgic;
>        int ret = 0;
>          :
>        switch (attr) {
>        case KVM_DEV_ARM_ITS_CTRL_RESET:
>             vgic_its_reset(kvm, its);
>             break;
>        case KVM_DEV_ARM_ITS_SAVE_TABLES:
>             dist->save_its_tables_in_progress = true;
>             ret = abi->save_tables(its);
>             dist->save_its_tables_in_progress = false;
>             break;
>        case KVM_DEV_ARM_ITS_RESTORE_TABLES:
>             ret = abi->restore_tables(its);
>             break;
>        }
>        :
>     }

Yes, this is the sort of thing I had in mind. This should make the
whole patch rather trivial, and you could implement
kvm_arch_allow_write_without_running_vcpu() as returning this flag.

	M.

-- 
Without deviation from the norm, progress is not possible.



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux