Lines Matching defs:pvec
1137 static int mmu_pages_add(struct kvm_mmu_pages *pvec, struct kvm_mmu_page *sp,
1143 for (i=0; i < pvec->nr; i++)
1144 if (pvec->page[i].sp == sp)
1147 pvec->page[pvec->nr].sp = sp;
1148 pvec->page[pvec->nr].idx = idx;
1149 pvec->nr++;
1150 return (pvec->nr == KVM_PAGE_ARRAY_NR);
1154 struct kvm_mmu_pages *pvec)
1168 if (mmu_pages_add(pvec, child, i))
1171 ret = __mmu_unsync_walk(child, pvec);
1180 if (mmu_pages_add(pvec, child, i))
1198 struct kvm_mmu_pages *pvec)
1203 mmu_pages_add(pvec, sp, 0);
1204 return __mmu_unsync_walk(sp, pvec);
1303 #define for_each_sp(pvec, sp, parents, i) \
1304 for (i = mmu_pages_next(&pvec, &parents, -1), \
1305 sp = pvec.page[i].sp; \
1306 i < pvec.nr && ({ sp = pvec.page[i].sp; 1;}); \
1307 i = mmu_pages_next(&pvec, &parents, i))
1309 static int mmu_pages_next(struct kvm_mmu_pages *pvec,
1315 for (n = i+1; n < pvec->nr; n++) {
1316 struct kvm_mmu_page *sp = pvec->page[n].sp;
1319 parents->idx[0] = pvec->page[n].idx;
1324 parents->idx[sp->role.level-1] = pvec->page[n].idx;
1351 struct kvm_mmu_pages *pvec)
1354 pvec->nr = 0;