Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8482644a authored by Takuya Yoshikawa's avatar Takuya Yoshikawa Committed by Marcelo Tosatti
Browse files

KVM: set_memory_region: Refactor commit_memory_region()



This patch makes the parameter old a const pointer to the old memory
slot and adds a new parameter named change to know the change being
requested: the former is for removing extra copying and the latter is
for cleaning up the code.

Signed-off-by: default avatarTakuya Yoshikawa <yoshikawa_takuya_b1@lab.ntt.co.jp>
Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
parent 7b6195a9
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -238,7 +238,8 @@ int kvm_arch_prepare_memory_region(struct kvm *kvm,

void kvm_arch_commit_memory_region(struct kvm *kvm,
				   struct kvm_userspace_memory_region *mem,
				   struct kvm_memory_slot old)
				   const struct kvm_memory_slot *old,
				   enum kvm_mr_change change)
{
}

+2 −1
Original line number Diff line number Diff line
@@ -1591,7 +1591,8 @@ int kvm_arch_prepare_memory_region(struct kvm *kvm,

void kvm_arch_commit_memory_region(struct kvm *kvm,
		struct kvm_userspace_memory_region *mem,
		struct kvm_memory_slot old)
		const struct kvm_memory_slot *old,
		enum kvm_mr_change change)
{
	return;
}
+1 −1
Original line number Diff line number Diff line
@@ -152,7 +152,7 @@ extern int kvmppc_core_prepare_memory_region(struct kvm *kvm,
				struct kvm_userspace_memory_region *mem);
extern void kvmppc_core_commit_memory_region(struct kvm *kvm,
				struct kvm_userspace_memory_region *mem,
				struct kvm_memory_slot old);
				const struct kvm_memory_slot *old);
extern int kvm_vm_ioctl_get_smmu_info(struct kvm *kvm,
				      struct kvm_ppc_smmu_info *info);
extern void kvmppc_core_flush_memslot(struct kvm *kvm,
+2 −2
Original line number Diff line number Diff line
@@ -1639,12 +1639,12 @@ int kvmppc_core_prepare_memory_region(struct kvm *kvm,

void kvmppc_core_commit_memory_region(struct kvm *kvm,
				      struct kvm_userspace_memory_region *mem,
				      struct kvm_memory_slot old)
				      const struct kvm_memory_slot *old)
{
	unsigned long npages = mem->memory_size >> PAGE_SHIFT;
	struct kvm_memory_slot *memslot;

	if (npages && old.npages) {
	if (npages && old->npages) {
		/*
		 * If modifying a memslot, reset all the rmap dirty bits.
		 * If this is a new memslot, we don't need to do anything
+1 −1
Original line number Diff line number Diff line
@@ -1283,7 +1283,7 @@ int kvmppc_core_prepare_memory_region(struct kvm *kvm,

void kvmppc_core_commit_memory_region(struct kvm *kvm,
				struct kvm_userspace_memory_region *mem,
				struct kvm_memory_slot old)
				const struct kvm_memory_slot *old)
{
}

Loading