Messages in this thread | | | Date | Wed, 20 Jun 2012 18:02:54 +0900 | From | Takuya Yoshikawa <> | Subject | Re: [PATCH v7 02/10] KVM: MMU: abstract spte write-protect |
| |
On Wed, 20 Jun 2012 15:57:15 +0800 Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com> wrote:
> Introduce a common function to abstract spte write-protect to > cleanup the code > > Signed-off-by: Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>
...
> +/* Return true if the spte is dropped. */ > +static bool spte_write_protect(struct kvm *kvm, u64 *sptep, bool *flush) > +{ > + u64 spte = *sptep; > + > + if (!is_writable_pte(spte)) > + return false; > + > + rmap_printk("rmap_write_protect: spte %p %llx\n", sptep, *sptep);
...
> @@ -3902,16 +3915,7 @@ void kvm_mmu_slot_remove_write_access(struct kvm *kvm, int slot) > !is_last_spte(pt[i], sp->role.level)) > continue; > > - if (is_large_pte(pt[i])) { > - drop_spte(kvm, &pt[i]); > - --kvm->stat.lpages; > - continue; > - } > - > - /* avoid RMW */ > - if (is_writable_pte(pt[i])) > - mmu_spte_update(&pt[i], > - pt[i] & ~PT_WRITABLE_MASK); > + spte_write_protect(kvm, &pt[i], &flush);
Adding rmap_printk() here seems wrong.
If you think it is not a problem, please explain why you think so in the changelog.
Thanks, Takuya
| |