• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/x86/kvm/

Lines Matching defs:rmapp

563  * If rmapp bit zero is zero, then rmapp point to the shadw page table entry
566 * If rmapp bit zero is one, (then rmap & ~1) points to a struct kvm_rmap_desc
577 unsigned long *rmapp;
584 rmapp = gfn_to_rmap(vcpu->kvm, gfn, sp->role.level);
585 if (!*rmapp) {
587 *rmapp = (unsigned long)spte;
588 } else if (!(*rmapp & 1)) {
591 desc->sptes[0] = (u64 *)*rmapp;
593 *rmapp = (unsigned long)desc | 1;
596 desc = (struct kvm_rmap_desc *)(*rmapp & ~1ul);
612 static void rmap_desc_remove_entry(unsigned long *rmapp,
626 *rmapp = (unsigned long)desc->sptes[0];
631 *rmapp = (unsigned long)desc->more | 1;
641 unsigned long *rmapp;
646 rmapp = gfn_to_rmap(kvm, gfn, sp->role.level);
647 if (!*rmapp) {
650 } else if (!(*rmapp & 1)) {
652 if ((u64 *)*rmapp != spte) {
657 *rmapp = 0;
660 desc = (struct kvm_rmap_desc *)(*rmapp & ~1ul);
665 rmap_desc_remove_entry(rmapp,
704 static u64 *rmap_next(struct kvm *kvm, unsigned long *rmapp, u64 *spte)
710 if (!*rmapp)
712 else if (!(*rmapp & 1)) {
714 return (u64 *)*rmapp;
717 desc = (struct kvm_rmap_desc *)(*rmapp & ~1ul);
732 unsigned long *rmapp;
736 rmapp = gfn_to_rmap(kvm, gfn, PT_PAGE_TABLE_LEVEL);
738 spte = rmap_next(kvm, rmapp, NULL);
747 spte = rmap_next(kvm, rmapp, spte);
752 spte = rmap_next(kvm, rmapp, NULL);
760 rmapp = gfn_to_rmap(kvm, gfn, i);
761 spte = rmap_next(kvm, rmapp, NULL);
774 spte = rmap_next(kvm, rmapp, spte);
781 static int kvm_unmap_rmapp(struct kvm *kvm, unsigned long *rmapp,
787 while ((spte = rmap_next(kvm, rmapp, NULL))) {
796 static int kvm_set_pte_rmapp(struct kvm *kvm, unsigned long *rmapp,
806 spte = rmap_next(kvm, rmapp, NULL);
813 spte = rmap_next(kvm, rmapp, NULL);
822 spte = rmap_next(kvm, rmapp, spte);
833 int (*handler)(struct kvm *kvm, unsigned long *rmapp,
883 static int kvm_age_rmapp(struct kvm *kvm, unsigned long *rmapp,
897 return kvm_unmap_rmapp(kvm, rmapp, data);
899 spte = rmap_next(kvm, rmapp, NULL);
909 spte = rmap_next(kvm, rmapp, spte);
918 unsigned long *rmapp;
923 rmapp = gfn_to_rmap(vcpu->kvm, gfn, sp->role.level);
925 kvm_unmap_rmapp(vcpu->kvm, rmapp, 0);
3494 unsigned long *rmapp = &m->rmap[j];
3496 if (!*rmapp)
3498 if (!(*rmapp & 1)) {
3502 d = (struct kvm_rmap_desc *)(*rmapp & ~1ul);
3519 unsigned long *rmapp;
3539 rmapp = gfn_to_rmap(kvm, gfn, rev_sp->role.level);
3540 if (!*rmapp) {
3590 unsigned long *rmapp;
3601 rmapp = &slot->rmap[gfn - slot->base_gfn];
3603 spte = rmap_next(vcpu->kvm, rmapp, NULL);
3610 spte = rmap_next(vcpu->kvm, rmapp, spte);