From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH v2 2/9] KVM: MMU: introduce for_each_rmap_spte() Date: Tue, 12 May 2015 10:08:14 +0200 Message-ID: <5551B4EE.8020000@redhat.com> References: <1431397953-16642-1-git-send-email-guangrong.xiao@linux.intel.com> <1431397953-16642-3-git-send-email-guangrong.xiao@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: gleb@kernel.org, mtosatti@redhat.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org To: Xiao Guangrong Return-path: In-Reply-To: <1431397953-16642-3-git-send-email-guangrong.xiao@linux.intel.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 12/05/2015 04:32, Xiao Guangrong wrote: > - while ((sptep = rmap_get_first(*rmapp, &iter))) { > - BUG_ON(!(*sptep & PT_PRESENT_MASK)); > +restart: > + for_each_rmap_spte(rmapp, &iter, sptep) { > rmap_printk("kvm_rmap_unmap_hva: spte %p %llx gfn %llx (%d)\n", > sptep, *sptep, gfn, level); > > drop_spte(kvm, sptep); > need_tlb_flush = 1; > + goto restart; > } > For this one, I would keep using rmap_get_first. Otherwise looks good. Paolo