Lines Matching refs:pvec

1805 static int mmu_pages_add(struct kvm_mmu_pages *pvec, struct kvm_mmu_page *sp,  in mmu_pages_add()  argument
1811 for (i=0; i < pvec->nr; i++) in mmu_pages_add()
1812 if (pvec->page[i].sp == sp) in mmu_pages_add()
1815 pvec->page[pvec->nr].sp = sp; in mmu_pages_add()
1816 pvec->page[pvec->nr].idx = idx; in mmu_pages_add()
1817 pvec->nr++; in mmu_pages_add()
1818 return (pvec->nr == KVM_PAGE_ARRAY_NR); in mmu_pages_add()
1829 struct kvm_mmu_pages *pvec) in __mmu_unsync_walk() argument
1845 if (mmu_pages_add(pvec, child, i)) in __mmu_unsync_walk()
1848 ret = __mmu_unsync_walk(child, pvec); in __mmu_unsync_walk()
1858 if (mmu_pages_add(pvec, child, i)) in __mmu_unsync_walk()
1870 struct kvm_mmu_pages *pvec) in mmu_unsync_walk() argument
1872 pvec->nr = 0; in mmu_unsync_walk()
1876 mmu_pages_add(pvec, sp, INVALID_INDEX); in mmu_unsync_walk()
1877 return __mmu_unsync_walk(sp, pvec); in mmu_unsync_walk()
1952 #define for_each_sp(pvec, sp, parents, i) \ argument
1953 for (i = mmu_pages_first(&pvec, &parents); \
1954 i < pvec.nr && ({ sp = pvec.page[i].sp; 1;}); \
1955 i = mmu_pages_next(&pvec, &parents, i))
1957 static int mmu_pages_next(struct kvm_mmu_pages *pvec, in mmu_pages_next() argument
1963 for (n = i+1; n < pvec->nr; n++) { in mmu_pages_next()
1964 struct kvm_mmu_page *sp = pvec->page[n].sp; in mmu_pages_next()
1965 unsigned idx = pvec->page[n].idx; in mmu_pages_next()
1978 static int mmu_pages_first(struct kvm_mmu_pages *pvec, in mmu_pages_first() argument
1984 if (pvec->nr == 0) in mmu_pages_first()
1987 WARN_ON(pvec->page[0].idx != INVALID_INDEX); in mmu_pages_first()
1989 sp = pvec->page[0].sp; in mmu_pages_first()
1999 return mmu_pages_next(pvec, parents, 0); in mmu_pages_first()