bin/csh/csh.c
689
Char *dp, **pv;
bin/csh/csh.c
700
pv = xcalloc((size_t) (i + 2), sizeof(*pv));
bin/csh/csh.c
707
pv[i++] = Strsave(*cp ? cp : STRdot);
bin/csh/csh.c
717
pv[i] = 0;
bin/csh/csh.c
718
setq(STRpath, pv, &shvhed);
bin/csh/exec.c
114
Char *blk[2], **av, *dp, **pv, *sav;
bin/csh/exec.c
129
pv = globall(blk);
bin/csh/exec.c
130
if (pv == 0) {
bin/csh/exec.c
137
pv = saveblk(blk);
bin/csh/exec.c
139
trim(pv);
bin/csh/exec.c
142
expath = Strsave(pv[0]);
bin/csh/exec.c
147
blkfree(pv);
bin/csh/exec.c
161
blkfree(pv);
bin/csh/exec.c
171
t->t_dcom = blkspl(pv, av);
bin/csh/exec.c
172
free(pv);
bin/csh/exec.c
201
pv = justabs;
bin/csh/exec.c
203
pv = pathv->vec;
bin/csh/exec.c
217
if (!slash && pv[0][0] == '/' && havhash) {
bin/csh/exec.c
222
if (pv[0][0] == 0 || eq(pv[0], STRdot)) /* don't make ./xxx */
bin/csh/exec.c
225
dp = Strspl(*pv, sav);
bin/csh/exec.c
233
pv++;
bin/csh/exec.c
235
} while (*pv);
bin/csh/exec.c
444
Char **pv;
bin/csh/exec.c
456
for (pv = pathv->vec; *pv; pv++, i++) {
bin/csh/exec.c
457
if (pv[0][0] != '/')
bin/csh/exec.c
459
dirp = opendir(short2str(*pv));
bin/csh/exec.c
510
Char **pv, *sav;
bin/csh/exec.c
519
pv = justabs;
bin/csh/exec.c
521
pv = v->vec;
bin/csh/exec.c
527
if (!slash && pv[0][0] == '/' && havhash) {
bin/csh/exec.c
532
if (pv[0][0] == 0 || eq(pv[0], STRdot)) { /* don't make ./xxx */
bin/csh/exec.c
539
if (executable(*pv, sav, 0)) {
bin/csh/exec.c
545
pv++;
bin/csh/exec.c
547
} while (*pv);
bin/csh/exec.c
701
Char **pv;
bin/csh/exec.c
707
pv = justabs;
bin/csh/exec.c
709
pv = v->vec;
bin/csh/exec.c
712
pv++;
bin/csh/exec.c
713
if (pv[0][0] == 0 || eq(pv[0], STRdot)) {
bin/csh/exec.c
723
s1 = Strspl(*pv, STRslash);
bin/csh/sem.c
398
execute(t->t_dcar, wanttty, pipein, pv);
bin/csh/sem.c
403
execute(t->t_dcdr, wanttty, pv, pipeout);
bin/csh/sem.c
487
Char **pv;
bin/csh/sem.c
494
pv = globall(blk);
bin/csh/sem.c
495
if (pv == NULL) {
bin/csh/sem.c
502
if (pv[1] != NULL) { /* we need to fix the command vector */
bin/csh/sem.c
503
Char **av = blkspl(t->t_dcom, &pv[1]);
bin/csh/sem.c
508
blk[0] = pv[0];
bin/csh/sem.c
509
free(pv);
bin/csh/sem.c
622
mypipe(int *pv)
bin/csh/sem.c
624
if (pipe(pv) < 0)
bin/csh/sem.c
626
pv[0] = dmove(pv[0], -1);
bin/csh/sem.c
627
pv[1] = dmove(pv[1], -1);
bin/csh/sem.c
628
if (pv[0] >= 0 && pv[1] >= 0)
bin/csh/sem.c
68
int pv[2], pid;
bin/ksh/eval.c
880
int ofd1, pv[2];
bin/ksh/eval.c
881
openpipe(pv);
bin/ksh/eval.c
882
shf = shf_fdopen(pv[0], SHF_RD, (struct shf *) 0);
bin/ksh/eval.c
884
if (pv[1] != 1) {
bin/ksh/eval.c
885
ksh_dup2(pv[1], 1, false);
bin/ksh/eval.c
886
close(pv[1]);
bin/ksh/exec.c
173
openpipe(pv);
bin/ksh/exec.c
174
(void) ksh_dup2(pv[1], 1, false); /* stdout of curr */
bin/ksh/exec.c
180
exchild(t->left, flags|XPIPEO|XCCLOSE, pv[0]);
bin/ksh/exec.c
181
(void) ksh_dup2(pv[0], 0, false); /* stdin of next */
bin/ksh/exec.c
182
closepipe(pv);
bin/ksh/exec.c
231
openpipe(pv);
bin/ksh/exec.c
232
if (pv[0] != 0) {
bin/ksh/exec.c
233
ksh_dup2(pv[0], 0, false);
bin/ksh/exec.c
234
close(pv[0]);
bin/ksh/exec.c
236
coproc.write = pv[1];
bin/ksh/exec.c
242
openpipe(pv);
bin/ksh/exec.c
243
coproc.read = pv[0];
bin/ksh/exec.c
244
ksh_dup2(pv[1], 1, false);
bin/ksh/exec.c
245
coproc.readw = pv[1]; /* closed before first read */
bin/ksh/exec.c
83
int pv[2];
bin/ksh/io.c
286
openpipe(pv)
bin/ksh/io.c
287
int *pv;
bin/ksh/io.c
289
if (pipe(pv) < 0)
bin/ksh/io.c
291
pv[0] = savefd(pv[0], 0);
bin/ksh/io.c
292
pv[1] = savefd(pv[1], 0);
bin/ksh/io.c
296
closepipe(pv)
bin/ksh/io.c
297
int *pv;
bin/ksh/io.c
299
close(pv[0]);
bin/ksh/io.c
300
close(pv[1]);
lib/libkvm/kvm_sun2.c
137
struct private_vmstate *pv = v->private;
lib/libkvm/kvm_sun2.c
162
pte = pv->pmeg[sme][ptenum];
lib/libkvm/kvm_sun3.c
137
struct private_vmstate *pv = v->private;
lib/libkvm/kvm_sun3.c
162
pte = pv->pmeg[sme][ptenum];
libexec/rexecd/rexecd.c
153
int pv[2], pid, cc;
libexec/rexecd/rexecd.c
268
if (pipe(pv) < 0 || (pid = fork()) == -1) {
libexec/rexecd/rexecd.c
282
(void)close(pv[1]);
libexec/rexecd/rexecd.c
284
fds[1].fd = pv[0];
libexec/rexecd/rexecd.c
286
if (ioctl(pv[1], FIONBIO, (char *)&one) < 0)
libexec/rexecd/rexecd.c
292
(void)close(pv[0]);
libexec/rexecd/rexecd.c
302
cc = read(pv[0], buf, sizeof (buf));
libexec/rexecd/rexecd.c
314
(void)close(pv[0]);
libexec/rexecd/rexecd.c
315
if (dup2(pv[1], STDERR_FILENO) < 0) {
libexec/rshd/rshd.c
256
int cc, pv[2], pid, s = -1; /* XXX gcc */
libexec/rshd/rshd.c
560
if (pipe(pv) < 0)
libexec/rshd/rshd.c
571
(void)close(pv[1]);
libexec/rshd/rshd.c
575
set[1].fd = pv[0];
libexec/rshd/rshd.c
577
ioctl(pv[0], FIONBIO, (char *)&one);
libexec/rshd/rshd.c
594
cc = read(pv[0], buf, sizeof(buf));
libexec/rshd/rshd.c
608
(void)close(pv[0]);
libexec/rshd/rshd.c
609
(void)dup2(pv[1], STDERR_FILENO);
libexec/rshd/rshd.c
610
close(pv[1]);
sys/arch/aarch64/aarch64/pmap.c
1053
struct pv_entry *pv, *ppv;
sys/arch/aarch64/aarch64/pmap.c
1067
for (ppv = NULL, pv = &pp->pp_pv; pv != NULL; pv = pv->pv_next) {
sys/arch/aarch64/aarch64/pmap.c
1068
if (pv->pv_pmap == pm && trunc_page(pv->pv_va) == va) {
sys/arch/aarch64/aarch64/pmap.c
1071
ppv = pv;
sys/arch/aarch64/aarch64/pmap.c
1074
if (pm != pmap_kernel() && pv != NULL)
sys/arch/aarch64/aarch64/pmap.c
1075
LIST_REMOVE(pv, pv_proc);
sys/arch/aarch64/aarch64/pmap.c
1079
pv->pv_pmap = NULL;
sys/arch/aarch64/aarch64/pmap.c
1080
pv = NULL;
sys/arch/aarch64/aarch64/pmap.c
1082
} else if (pv != NULL) {
sys/arch/aarch64/aarch64/pmap.c
1084
ppv->pv_next = pv->pv_next;
sys/arch/aarch64/aarch64/pmap.c
1090
return pv;
sys/arch/aarch64/aarch64/pmap.c
1120
struct pv_entry *pv;
sys/arch/aarch64/aarch64/pmap.c
1129
for (pv = &pp->pp_pv; pv != NULL; pv = pv->pv_next) {
sys/arch/aarch64/aarch64/pmap.c
1130
if (pv->pv_pmap == NULL) {
sys/arch/aarch64/aarch64/pmap.c
1131
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
1134
struct pmap * const pm = pv->pv_pmap;
sys/arch/aarch64/aarch64/pmap.c
1138
pr(" pv[%d] pv=%p\n", i, pv);
sys/arch/aarch64/aarch64/pmap.c
1141
trunc_page(pv->pv_va), _pmap_color(pv->pv_va));
sys/arch/aarch64/aarch64/pmap.c
1142
pr(" pv[%d].pv_ptep = %p\n", i, pv->pv_ptep);
sys/arch/aarch64/aarch64/pmap.c
1152
struct pv_entry *pv;
sys/arch/aarch64/aarch64/pmap.c
1170
pv = &pp->pp_pv;
sys/arch/aarch64/aarch64/pmap.c
1171
pv->pv_va = (pv->pv_va & (PAGE_SIZE - 1)) | va;
sys/arch/aarch64/aarch64/pmap.c
1177
pv = *pvp;
sys/arch/aarch64/aarch64/pmap.c
1178
if (pv == NULL)
sys/arch/aarch64/aarch64/pmap.c
1181
pv->pv_next = pp->pp_pv.pv_next;
sys/arch/aarch64/aarch64/pmap.c
1182
pp->pp_pv.pv_next = pv;
sys/arch/aarch64/aarch64/pmap.c
1183
pv->pv_va = va;
sys/arch/aarch64/aarch64/pmap.c
1185
pv->pv_pmap = pm;
sys/arch/aarch64/aarch64/pmap.c
1186
pv->pv_ptep = ptep;
sys/arch/aarch64/aarch64/pmap.c
1190
LIST_INSERT_HEAD(&pm->pm_pvlist, pv, pv_proc);
sys/arch/aarch64/aarch64/pmap.c
1193
printf("pv %p alias added va=%016lx -> pa=%016lx\n", pv, va, pa);
sys/arch/aarch64/aarch64/pmap.c
1225
_pmap_protect_pv(struct pmap_page *pp, struct pv_entry *pv, vm_prot_t prot)
sys/arch/aarch64/aarch64/pmap.c
1230
const bool user = (pv->pv_pmap != pmap_kernel());
sys/arch/aarch64/aarch64/pmap.c
1233
UVMHIST_CALLARGS(pmaphist, "pp=%p, pv=%p, prot=%08x", pp, pv, prot, 0);
sys/arch/aarch64/aarch64/pmap.c
1235
KASSERT(mutex_owned(&pv->pv_pmap->pm_lock));
sys/arch/aarch64/aarch64/pmap.c
1237
ptep = pv->pv_ptep;
sys/arch/aarch64/aarch64/pmap.c
1258
struct pmap * const pm = pv->pv_pmap;
sys/arch/aarch64/aarch64/pmap.c
1261
AARCH64_TLBI_BY_ASID_VA(pai->pai_asid, trunc_page(pv->pv_va));
sys/arch/aarch64/aarch64/pmap.c
2064
struct pv_entry *pv, *pvtmp, *opv, *pvtofree = NULL;
sys/arch/aarch64/aarch64/pmap.c
2078
LIST_FOREACH_SAFE(pv, &pm->pm_pvlist, pv_proc, pvtmp) {
sys/arch/aarch64/aarch64/pmap.c
2079
ptep = pv->pv_ptep;
sys/arch/aarch64/aarch64/pmap.c
2084
pm, pv->pv_va);
sys/arch/aarch64/aarch64/pmap.c
2092
pa, pm, pv->pv_va);
sys/arch/aarch64/aarch64/pmap.c
2095
opv = _pmap_remove_pv(pp, pm, trunc_page(pv->pv_va), pte);
sys/arch/aarch64/aarch64/pmap.c
2116
for (pv = pvtofree; pv != NULL; pv = pvtmp) {
sys/arch/aarch64/aarch64/pmap.c
2117
pvtmp = pv->pv_next;
sys/arch/aarch64/aarch64/pmap.c
2118
pool_cache_put(&_pmap_pv_pool, pv);
sys/arch/aarch64/aarch64/pmap.c
2199
struct pv_entry *pv, *pvtmp;
sys/arch/aarch64/aarch64/pmap.c
2208
for (pv = pvtofree; pv != NULL; pv = pvtmp) {
sys/arch/aarch64/aarch64/pmap.c
2209
pvtmp = pv->pv_next;
sys/arch/aarch64/aarch64/pmap.c
2210
pool_cache_put(&_pmap_pv_pool, pv);
sys/arch/aarch64/aarch64/pmap.c
2217
struct pv_entry *pv, *pvtmp;
sys/arch/aarch64/aarch64/pmap.c
2224
for (pv = &pp->pp_pv; pv != NULL;) {
sys/arch/aarch64/aarch64/pmap.c
2225
if ((pm = pv->pv_pmap) == NULL) {
sys/arch/aarch64/aarch64/pmap.c
2226
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
2227
pv = pp->pp_pv.pv_next;
sys/arch/aarch64/aarch64/pmap.c
2232
pv = &pp->pp_pv;
sys/arch/aarch64/aarch64/pmap.c
2235
opte = atomic_swap_64(pv->pv_ptep, 0);
sys/arch/aarch64/aarch64/pmap.c
2237
const vaddr_t va = trunc_page(pv->pv_va);
sys/arch/aarch64/aarch64/pmap.c
2242
(vaddr_t)pv->pv_ptep)), false);
sys/arch/aarch64/aarch64/pmap.c
2252
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
2254
KASSERT(pv == pvtmp);
sys/arch/aarch64/aarch64/pmap.c
2255
KASSERT(pp->pp_pv.pv_next == pv->pv_next);
sys/arch/aarch64/aarch64/pmap.c
2256
pv->pv_next = pvtofree;
sys/arch/aarch64/aarch64/pmap.c
2257
pvtofree = pv;
sys/arch/aarch64/aarch64/pmap.c
2260
pv = pp->pp_pv.pv_next;
sys/arch/aarch64/aarch64/pmap.c
2264
for (pv = pvtofree; pv != NULL; pv = pvtmp) {
sys/arch/aarch64/aarch64/pmap.c
2265
pvtmp = pv->pv_next;
sys/arch/aarch64/aarch64/pmap.c
2266
pool_cache_put(&_pmap_pv_pool, pv);
sys/arch/aarch64/aarch64/pmap.c
2291
struct pv_entry *pv;
sys/arch/aarch64/aarch64/pmap.c
2314
pv = &pp->pp_pv;
sys/arch/aarch64/aarch64/pmap.c
2315
while (pv != NULL) {
sys/arch/aarch64/aarch64/pmap.c
2316
if ((pm = pv->pv_pmap) == NULL) {
sys/arch/aarch64/aarch64/pmap.c
2317
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
2318
pv = pv->pv_next;
sys/arch/aarch64/aarch64/pmap.c
2323
pv = &pp->pp_pv;
sys/arch/aarch64/aarch64/pmap.c
2326
_pmap_protect_pv(pp, pv, prot);
sys/arch/aarch64/aarch64/pmap.c
2328
pv = pv->pv_next;
sys/arch/aarch64/aarch64/pmap.c
2492
struct pv_entry *pv;
sys/arch/aarch64/aarch64/pmap.c
2532
for (pv = &pp->pp_pv; pv != NULL; pv = pv->pv_next) {
sys/arch/aarch64/aarch64/pmap.c
2533
if (pv->pv_pmap == NULL) {
sys/arch/aarch64/aarch64/pmap.c
2534
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
2540
va = trunc_page(pv->pv_va);
sys/arch/aarch64/aarch64/pmap.c
2542
ptep = pv->pv_ptep;
sys/arch/aarch64/aarch64/pmap.c
2562
struct pmap * const pm = pv->pv_pmap;
sys/arch/aarch64/aarch64/pmap.c
2583
struct pv_entry *pv;
sys/arch/aarch64/aarch64/pmap.c
2611
for (pv = &pp->pp_pv; pv != NULL; pv = pv->pv_next) {
sys/arch/aarch64/aarch64/pmap.c
2612
if (pv->pv_pmap == NULL) {
sys/arch/aarch64/aarch64/pmap.c
2613
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
2619
va = trunc_page(pv->pv_va);
sys/arch/aarch64/aarch64/pmap.c
2621
ptep = pv->pv_ptep;
sys/arch/aarch64/aarch64/pmap.c
2640
struct pmap * const pm = pv->pv_pmap;
sys/arch/aarch64/aarch64/pmap.c
2668
struct pv_entry *pv;
sys/arch/aarch64/aarch64/pmap.c
2672
for (pv = &pp->pp_pv; pv != NULL; pv = pv->pv_next) {
sys/arch/aarch64/aarch64/pmap.c
2673
if (pv->pv_pmap == NULL) {
sys/arch/aarch64/aarch64/pmap.c
2674
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
2678
ptep = pv->pv_ptep;
sys/arch/aarch64/aarch64/pmap.c
2707
struct pv_entry *pv;
sys/arch/aarch64/aarch64/pmap.c
2711
for (pv = &pp->pp_pv; pv != NULL; pv = pv->pv_next) {
sys/arch/aarch64/aarch64/pmap.c
2712
if (pv->pv_pmap == NULL) {
sys/arch/aarch64/aarch64/pmap.c
2713
KASSERT(pv == &pp->pp_pv);
sys/arch/aarch64/aarch64/pmap.c
2717
ptep = pv->pv_ptep;
sys/arch/aarch64/aarch64/pmap_machdep.c
300
const pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/aarch64/aarch64/pmap_machdep.c
301
const vaddr_t last_va = trunc_page(pv->pv_va);
sys/arch/aarch64/aarch64/pmap_machdep.c
304
KASSERT(pv->pv_pmap == NULL);
sys/arch/aarch64/aarch64/pmap_machdep.c
305
KASSERT(pv->pv_next == NULL);
sys/arch/aarch64/aarch64/pmap_machdep.c
308
pv->pv_va = va;
sys/arch/aarch64/aarch64/pmap_machdep.c
329
const pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/aarch64/aarch64/pmap_machdep.c
332
pv->pv_va = va;
sys/arch/aarch64/aarch64/pmap_machdep.c
334
KASSERT(pv->pv_pmap == NULL);
sys/arch/aarch64/aarch64/pmap_machdep.c
335
KASSERT(pv->pv_next == NULL);
sys/arch/alpha/alpha/db_interface.c
149
DBREG(pv, FRAME_T12),
sys/arch/alpha/alpha/pmap.c
1883
pv_entry_t pv;
sys/arch/alpha/alpha/pmap.c
1920
while ((pv = LIST_FIRST(&pmap->pm_pvents)) != NULL) {
sys/arch/alpha/alpha/pmap.c
1921
KASSERT(pv->pv_pmap == pmap);
sys/arch/alpha/alpha/pmap.c
1922
pmap_pv_remove(pmap, PHYS_TO_VM_PAGE(pmap_pte_pa(pv->pv_pte)),
sys/arch/alpha/alpha/pmap.c
1923
pv->pv_va, true, NULL, &tlbctx);
sys/arch/alpha/alpha/pmap.c
1951
pv_entry_t pv, nextpv;
sys/arch/alpha/alpha/pmap.c
1975
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/alpha/alpha/pmap.c
1976
PMAP_LOCK(pv->pv_pmap);
sys/arch/alpha/alpha/pmap.c
1977
opte = atomic_load_relaxed(pv->pv_pte);
sys/arch/alpha/alpha/pmap.c
1979
atomic_store_relaxed(pv->pv_pte,
sys/arch/alpha/alpha/pmap.c
1981
pmap_tlb_shootdown_pv(pv->pv_pmap, pv->pv_va,
sys/arch/alpha/alpha/pmap.c
1984
PMAP_UNLOCK(pv->pv_pmap);
sys/arch/alpha/alpha/pmap.c
2000
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = nextpv) {
sys/arch/alpha/alpha/pmap.c
2005
nextpv = pv->pv_next;
sys/arch/alpha/alpha/pmap.c
2007
PMAP_LOCK(pv->pv_pmap);
sys/arch/alpha/alpha/pmap.c
2008
pmap = pv->pv_pmap;
sys/arch/alpha/alpha/pmap.c
2009
va = pv->pv_va;
sys/arch/alpha/alpha/pmap.c
2010
pte_bits = pmap_remove_mapping(pmap, va, pv->pv_pte,
sys/arch/alpha/alpha/pmap.c
2013
PMAP_UNLOCK(pv->pv_pmap);
sys/arch/alpha/alpha/pmap.c
3057
pv_entry_t pv;
sys/arch/alpha/alpha/pmap.c
3069
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/alpha/alpha/pmap.c
3070
PMAP_LOCK(pv->pv_pmap);
sys/arch/alpha/alpha/pmap.c
3072
pte = pv->pv_pte;
sys/arch/alpha/alpha/pmap.c
3078
pmap_tlb_shootdown_pv(pv->pv_pmap, pv->pv_va,
sys/arch/alpha/alpha/pmap.c
3081
PMAP_UNLOCK(pv->pv_pmap);
sys/arch/alpha/alpha/pmap.c
3215
pv_entry_t pv;
sys/arch/alpha/alpha/pmap.c
3225
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next)
sys/arch/alpha/alpha/pmap.c
3227
pv->pv_pmap, pv->pv_va);
sys/arch/alpha/alpha/pmap.c
3309
pv_entry_t pv;
sys/arch/alpha/alpha/pmap.c
3313
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/alpha/alpha/pmap.c
3314
if (pmap == pv->pv_pmap && va == pv->pv_va) {
sys/arch/alpha/alpha/pmap.c
3347
pv_entry_t pv, *pvp;
sys/arch/alpha/alpha/pmap.c
3360
for (pvp = (struct pv_entry **)&md->pvh_listx, pv = VM_MDPAGE_PVS(pg);
sys/arch/alpha/alpha/pmap.c
3361
pv != NULL; pvp = &pv->pv_next, pv = *pvp)
sys/arch/alpha/alpha/pmap.c
3362
if (pmap == pv->pv_pmap && va == pv->pv_va)
sys/arch/alpha/alpha/pmap.c
3365
KASSERT(pv != NULL);
sys/arch/alpha/alpha/pmap.c
3373
*pvp = (pv_entry_t)((uintptr_t)pv->pv_next |
sys/arch/alpha/alpha/pmap.c
3375
LIST_REMOVE(pv, pv_link);
sys/arch/alpha/alpha/pmap.c
3382
*opvp = pv;
sys/arch/alpha/alpha/pmap.c
3385
LIST_INSERT_HEAD(&tlbctx->t_freepvq, pv, pv_link);
sys/arch/alpha/alpha/pmap.c
501
#define pmap_pv_free(pv) pool_cache_put(&pmap_pv_cache, (pv))
sys/arch/alpha/alpha/pmap.c
527
pv_entry_t pv;
sys/arch/alpha/alpha/pmap.c
529
while ((pv = LIST_FIRST(list)) != NULL) {
sys/arch/alpha/alpha/pmap.c
530
LIST_REMOVE(pv, pv_link);
sys/arch/alpha/alpha/pmap.c
531
pmap_pv_free(pv);
sys/arch/arm/arm32/arm32_boot.c
253
pv_addr_t * const pv = &bmi->bmi_freeblocks[i];
sys/arch/arm/arm32/arm32_boot.c
254
paddr_t start = atop(pv->pv_pa);
sys/arch/arm/arm32/arm32_boot.c
255
const paddr_t end = start + atop(pv->pv_size);
sys/arch/arm/arm32/arm32_boot.c
259
pv->pv_pa, pv->pv_pa + pv->pv_size);
sys/arch/arm/arm32/arm32_kvminit.c
1029
pv = &bmi->bmi_freeblocks[i];
sys/arch/arm/arm32/arm32_kvminit.c
1032
pv->pv_pa, pv->pv_pa + pv->pv_size - 1,
sys/arch/arm/arm32/arm32_kvminit.c
1033
pv->pv_size / PAGE_SIZE);
sys/arch/arm/arm32/arm32_kvminit.c
210
pv_addr_t *pv = bmi->bmi_freeblocks;
sys/arch/arm/arm32/arm32_kvminit.c
279
pv->pv_pa = bmi->bmi_kernelend;
sys/arch/arm/arm32/arm32_kvminit.c
280
pv->pv_va = KERN_PHYSTOV(pv->pv_pa);
sys/arch/arm/arm32/arm32_kvminit.c
281
pv->pv_size = bmi->bmi_end - bmi->bmi_kernelend;
sys/arch/arm/arm32/arm32_kvminit.c
282
bmi->bmi_freepages += pv->pv_size / PAGE_SIZE;
sys/arch/arm/arm32/arm32_kvminit.c
284
__func__, pv->pv_size / PAGE_SIZE, pv->pv_pa,
sys/arch/arm/arm32/arm32_kvminit.c
285
pv->pv_pa + pv->pv_size - 1, pv->pv_va);
sys/arch/arm/arm32/arm32_kvminit.c
286
pv++;
sys/arch/arm/arm32/arm32_kvminit.c
292
pv->pv_pa = bmi->bmi_start;
sys/arch/arm/arm32/arm32_kvminit.c
293
pv->pv_va = KERN_PHYSTOV(pv->pv_pa);
sys/arch/arm/arm32/arm32_kvminit.c
294
pv->pv_size = bmi->bmi_kernelstart - pv->pv_pa;
sys/arch/arm/arm32/arm32_kvminit.c
295
bmi->bmi_freepages += pv->pv_size / PAGE_SIZE;
sys/arch/arm/arm32/arm32_kvminit.c
297
__func__, pv->pv_size / PAGE_SIZE, pv->pv_pa,
sys/arch/arm/arm32/arm32_kvminit.c
298
pv->pv_pa + pv->pv_size - 1, pv->pv_va);
sys/arch/arm/arm32/arm32_kvminit.c
299
pv++;
sys/arch/arm/arm32/arm32_kvminit.c
302
bmi->bmi_nfreeblocks = pv - bmi->bmi_freeblocks;
sys/arch/arm/arm32/arm32_kvminit.c
309
concat_pvaddr(pv_addr_t *acc_pv, pv_addr_t *pv)
sys/arch/arm/arm32/arm32_kvminit.c
311
if (acc_pv->pv_pa + acc_pv->pv_size == pv->pv_pa
sys/arch/arm/arm32/arm32_kvminit.c
312
&& acc_pv->pv_va + acc_pv->pv_size == pv->pv_va
sys/arch/arm/arm32/arm32_kvminit.c
313
&& acc_pv->pv_prot == pv->pv_prot
sys/arch/arm/arm32/arm32_kvminit.c
314
&& acc_pv->pv_cache == pv->pv_cache) {
sys/arch/arm/arm32/arm32_kvminit.c
317
__func__, pv, pv->pv_pa, pv->pv_pa + pv->pv_size,
sys/arch/arm/arm32/arm32_kvminit.c
320
acc_pv->pv_size += pv->pv_size;
sys/arch/arm/arm32/arm32_kvminit.c
328
add_pages(struct bootmem_info *bmi, pv_addr_t *pv)
sys/arch/arm/arm32/arm32_kvminit.c
331
while ((*pvp) != NULL && (*pvp)->pv_va <= pv->pv_va) {
sys/arch/arm/arm32/arm32_kvminit.c
334
if (concat_pvaddr(pv0, pv)) {
sys/arch/arm/arm32/arm32_kvminit.c
336
__func__, "appending", pv,
sys/arch/arm/arm32/arm32_kvminit.c
337
pv->pv_pa, pv->pv_pa + pv->pv_size - 1,
sys/arch/arm/arm32/arm32_kvminit.c
338
pv0->pv_pa, pv0->pv_pa + pv0->pv_size - pv->pv_size - 1);
sys/arch/arm/arm32/arm32_kvminit.c
339
pv = SLIST_NEXT(pv0, pv_list);
sys/arch/arm/arm32/arm32_kvminit.c
340
if (pv != NULL && concat_pvaddr(pv0, pv)) {
sys/arch/arm/arm32/arm32_kvminit.c
342
__func__, "merging", pv,
sys/arch/arm/arm32/arm32_kvminit.c
343
pv->pv_pa, pv->pv_pa + pv->pv_size - 1,
sys/arch/arm/arm32/arm32_kvminit.c
345
pv0->pv_pa + pv0->pv_size - pv->pv_size - 1);
sys/arch/arm/arm32/arm32_kvminit.c
347
SLIST_INSERT_HEAD(&bmi->bmi_freechunks, pv, pv_list);
sys/arch/arm/arm32/arm32_kvminit.c
351
KASSERT(pv->pv_va != (*pvp)->pv_va);
sys/arch/arm/arm32/arm32_kvminit.c
354
KASSERT((*pvp) == NULL || pv->pv_va < (*pvp)->pv_va);
sys/arch/arm/arm32/arm32_kvminit.c
358
*new_pv = *pv;
sys/arch/arm/arm32/arm32_kvminit.c
373
valloc_pages(struct bootmem_info *bmi, pv_addr_t *pv, size_t npages,
sys/arch/arm/arm32/arm32_kvminit.c
421
pv->pv_pa = free_pv->pv_pa;
sys/arch/arm/arm32/arm32_kvminit.c
422
pv->pv_va = free_pv->pv_va;
sys/arch/arm/arm32/arm32_kvminit.c
423
pv->pv_size = nbytes;
sys/arch/arm/arm32/arm32_kvminit.c
424
pv->pv_prot = prot;
sys/arch/arm/arm32/arm32_kvminit.c
425
pv->pv_cache = cache;
sys/arch/arm/arm32/arm32_kvminit.c
435
pv->pv_cache = PTE_CACHE;
sys/arch/arm/arm32/arm32_kvminit.c
450
memset((void *)pv->pv_va, 0, nbytes);
sys/arch/arm/arm32/arm32_kvminit.c
819
pv_addr_t *pv = SLIST_FIRST(&bmi->bmi_chunks);
sys/arch/arm/arm32/arm32_kvminit.c
820
if (!mapallmem_p || pv->pv_pa == bmi->bmi_start) {
sys/arch/arm/arm32/arm32_kvminit.c
821
cur_pv = *pv;
sys/arch/arm/arm32/arm32_kvminit.c
823
pv = SLIST_NEXT(pv, pv_list);
sys/arch/arm/arm32/arm32_kvminit.c
827
cur_pv.pv_size = pv->pv_pa - cur_pv.pv_pa;
sys/arch/arm/arm32/arm32_kvminit.c
831
while (pv != NULL) {
sys/arch/arm/arm32/arm32_kvminit.c
833
if (concat_pvaddr(&cur_pv, pv)) {
sys/arch/arm/arm32/arm32_kvminit.c
834
pv = SLIST_NEXT(pv, pv_list);
sys/arch/arm/arm32/arm32_kvminit.c
837
if (cur_pv.pv_pa + cur_pv.pv_size < pv->pv_pa) {
sys/arch/arm/arm32/arm32_kvminit.c
844
cur_pv.pv_size = pv->pv_pa - cur_pv.pv_va;
sys/arch/arm/arm32/arm32_kvminit.c
864
cur_pv.pv_size = pv->pv_pa - cur_pv.pv_va;
sys/arch/arm/arm32/arm32_kvminit.c
881
cur_pv = *pv;
sys/arch/arm/arm32/arm32_kvminit.c
882
pv = SLIST_NEXT(pv, pv_list);
sys/arch/arm/arm32/pmap.c
1006
SLIST_NEXT(pv, pv_link) = *pvp; /* add to ... */
sys/arch/arm/arm32/pmap.c
1007
*pvp = pv; /* ... locked list */
sys/arch/arm/arm32/pmap.c
1010
if ((pv->pv_flags & PVF_KWRITE) == PVF_KWRITE)
sys/arch/arm/arm32/pmap.c
1054
if (pv->pv_flags & PVF_WIRED)
sys/arch/arm/arm32/pmap.c
1067
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
1069
SLIST_FOREACH(pv, &md->pvh_list, pv_link) {
sys/arch/arm/arm32/pmap.c
1070
if (pm == pv->pv_pmap && va == pv->pv_va)
sys/arch/arm/arm32/pmap.c
1074
return pv;
sys/arch/arm/arm32/pmap.c
1094
struct pv_entry *pv, **prevptr;
sys/arch/arm/arm32/pmap.c
1097
pv = *prevptr;
sys/arch/arm/arm32/pmap.c
1099
while (pv) {
sys/arch/arm/arm32/pmap.c
1100
if (pv->pv_pmap == pm && pv->pv_va == va) { /* match? */
sys/arch/arm/arm32/pmap.c
1102
(uintptr_t)pm, (uintptr_t)md, pv->pv_flags, 0);
sys/arch/arm/arm32/pmap.c
1103
if (pv->pv_flags & PVF_WIRED) {
sys/arch/arm/arm32/pmap.c
1106
*prevptr = SLIST_NEXT(pv, pv_link); /* remove it! */
sys/arch/arm/arm32/pmap.c
1109
if (pv->pv_flags & PVF_WRITE)
sys/arch/arm/arm32/pmap.c
1114
if (pv->pv_flags & PVF_WRITE)
sys/arch/arm/arm32/pmap.c
1131
} else if (pv->pv_flags & PVF_WRITE) {
sys/arch/arm/arm32/pmap.c
1139
prevptr = &SLIST_NEXT(pv, pv_link); /* previous pointer */
sys/arch/arm/arm32/pmap.c
1140
pv = *prevptr; /* advance */
sys/arch/arm/arm32/pmap.c
1166
return pv;
sys/arch/arm/arm32/pmap.c
1836
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
1845
SLIST_FOREACH(pv, &md->pvh_list, pv_link) {
sys/arch/arm/arm32/pmap.c
1846
if (pv->pv_pmap != pm && (pv->pv_flags & PVF_NC) == 0)
sys/arch/arm/arm32/pmap.c
1866
SLIST_FOREACH(pv, &md->pvh_list, pv_link) {
sys/arch/arm/arm32/pmap.c
1873
if (pv->pv_pmap == pm || pv->pv_pmap == last_pmap)
sys/arch/arm/arm32/pmap.c
1882
(pv->pv_flags & (PVF_NC | PVF_WRITE)) ==
sys/arch/arm/arm32/pmap.c
1892
(pv->pv_flags & (PVF_NC | PVF_WRITE)) == 0)
sys/arch/arm/arm32/pmap.c
1901
pmap_vac_me_user(md, pa, (last_pmap = pv->pv_pmap), 0);
sys/arch/arm/arm32/pmap.c
1915
struct pv_entry *pv, *npv = NULL;
sys/arch/arm/arm32/pmap.c
1929
SLIST_FOREACH(pv, &md->pvh_list, pv_link) {
sys/arch/arm/arm32/pmap.c
1931
if (pm == pv->pv_pmap || kpmap == pv->pv_pmap) {
sys/arch/arm/arm32/pmap.c
1933
npv = pv;
sys/arch/arm/arm32/pmap.c
1936
if ((pv->pv_flags & PVF_NC) == 0) {
sys/arch/arm/arm32/pmap.c
1938
if (kpmap == pv->pv_pmap)
sys/arch/arm/arm32/pmap.c
1943
if (pv->pv_flags & PVF_WRITE)
sys/arch/arm/arm32/pmap.c
1945
} else if (pv->pv_flags & PVF_WRITE)
sys/arch/arm/arm32/pmap.c
1961
for (pv = npv; pv; pv = SLIST_NEXT(pv, pv_link)) {
sys/arch/arm/arm32/pmap.c
1962
if ((pm != pv->pv_pmap && kpmap != pv->pv_pmap) ||
sys/arch/arm/arm32/pmap.c
1963
(pv->pv_flags & PVF_NC))
sys/arch/arm/arm32/pmap.c
1966
pv->pv_flags |= PVF_NC;
sys/arch/arm/arm32/pmap.c
1969
= pmap_get_l2_bucket(pv->pv_pmap, pv->pv_va);
sys/arch/arm/arm32/pmap.c
1972
= &l2b->l2b_kva[l2pte_index(pv->pv_va)];
sys/arch/arm/arm32/pmap.c
1976
if ((va != pv->pv_va || pm != pv->pv_pmap)
sys/arch/arm/arm32/pmap.c
1978
pmap_cache_wbinv_page(pv->pv_pmap, pv->pv_va,
sys/arch/arm/arm32/pmap.c
1979
true, pv->pv_flags);
sys/arch/arm/arm32/pmap.c
1980
pmap_tlb_flush_SE(pv->pv_pmap, pv->pv_va,
sys/arch/arm/arm32/pmap.c
1981
pv->pv_flags);
sys/arch/arm/arm32/pmap.c
1985
PTE_SYNC_CURRENT(pv->pv_pmap, ptep);
sys/arch/arm/arm32/pmap.c
1993
for (pv = npv; pv; pv = SLIST_NEXT(pv, pv_link)) {
sys/arch/arm/arm32/pmap.c
1994
if (!(pv->pv_flags & PVF_NC) || (pm != pv->pv_pmap &&
sys/arch/arm/arm32/pmap.c
1995
(kpmap != pv->pv_pmap || other_writable)))
sys/arch/arm/arm32/pmap.c
1998
pv->pv_flags &= ~PVF_NC;
sys/arch/arm/arm32/pmap.c
2001
= pmap_get_l2_bucket(pv->pv_pmap, pv->pv_va);
sys/arch/arm/arm32/pmap.c
2004
= &l2b->l2b_kva[l2pte_index(pv->pv_va)];
sys/arch/arm/arm32/pmap.c
2010
pmap_tlb_flush_SE(pv->pv_pmap, pv->pv_va,
sys/arch/arm/arm32/pmap.c
2011
pv->pv_flags);
sys/arch/arm/arm32/pmap.c
2015
PTE_SYNC_CURRENT(pv->pv_pmap, ptep);
sys/arch/arm/arm32/pmap.c
2027
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
2057
pv = SLIST_FIRST(&md->pvh_list);
sys/arch/arm/arm32/pmap.c
2062
KASSERT(pv);
sys/arch/arm/arm32/pmap.c
2063
tst_mask = pv->pv_va;
sys/arch/arm/arm32/pmap.c
2064
pv = SLIST_NEXT(pv, pv_link);
sys/arch/arm/arm32/pmap.c
2071
for (; pv && !bad_alias; pv = SLIST_NEXT(pv, pv_link)) {
sys/arch/arm/arm32/pmap.c
2073
if (tst_mask != (pv->pv_va & arm_cache_prefer_mask))
sys/arch/arm/arm32/pmap.c
2086
for (; pv; pv = SLIST_NEXT(pv, pv_link)) {
sys/arch/arm/arm32/pmap.c
2087
if (tst_mask != (pv->pv_va & arm_cache_prefer_mask)) {
sys/arch/arm/arm32/pmap.c
2098
if (!bad_alias && pv != NULL)
sys/arch/arm/arm32/pmap.c
2107
SLIST_FOREACH(pv, &md->pvh_list, pv_link)
sys/arch/arm/arm32/pmap.c
2108
KDASSERT(((tst_mask ^ pv->pv_va) & arm_cache_prefer_mask) == 0);
sys/arch/arm/arm32/pmap.c
2139
pv = SLIST_FIRST(&md->pvh_list);
sys/arch/arm/arm32/pmap.c
2140
tst_mask = (md->pvh_attrs ^ pv->pv_va)
sys/arch/arm/arm32/pmap.c
2193
SLIST_FOREACH(pv, &md->pvh_list, pv_link)
sys/arch/arm/arm32/pmap.c
2194
KDASSERT(((tst_mask ^ pv->pv_va) & arm_cache_prefer_mask) == 0);
sys/arch/arm/arm32/pmap.c
2254
pv = SLIST_FIRST(&md->pvh_list);
sys/arch/arm/arm32/pmap.c
2256
KASSERT(pv);
sys/arch/arm/arm32/pmap.c
2262
if (SLIST_NEXT(pv, pv_link) == NULL) {
sys/arch/arm/arm32/pmap.c
2287
SLIST_FOREACH(pv, &md->pvh_list, pv_link) {
sys/arch/arm/arm32/pmap.c
2288
struct l2_bucket * const l2b = pmap_get_l2_bucket(pv->pv_pmap,
sys/arch/arm/arm32/pmap.c
2289
pv->pv_va);
sys/arch/arm/arm32/pmap.c
2291
pt_entry_t * const ptep = &l2b->l2b_kva[l2pte_index(pv->pv_va)];
sys/arch/arm/arm32/pmap.c
2295
pv->pv_flags |= PVF_NC;
sys/arch/arm/arm32/pmap.c
2297
pv->pv_flags &= ~PVF_NC;
sys/arch/arm/arm32/pmap.c
2305
pmap_tlb_flush_SE(pv->pv_pmap, pv->pv_va, pv->pv_flags);
sys/arch/arm/arm32/pmap.c
2309
PTE_SYNC_CURRENT(pv->pv_pmap, ptep);
sys/arch/arm/arm32/pmap.c
2324
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
2372
for (pv = SLIST_FIRST(&md->pvh_list); pv != NULL;) {
sys/arch/arm/arm32/pmap.c
2373
pmap_t pm = pv->pv_pmap;
sys/arch/arm/arm32/pmap.c
2374
const vaddr_t va = pv->pv_va;
sys/arch/arm/arm32/pmap.c
2375
const u_int oflags = pv->pv_flags;
sys/arch/arm/arm32/pmap.c
2381
pv = SLIST_NEXT(pv, pv_link);
sys/arch/arm/arm32/pmap.c
2404
pv = SLIST_FIRST(&md->pvh_list);
sys/arch/arm/arm32/pmap.c
2407
pv->pv_flags &= ~maskbits;
sys/arch/arm/arm32/pmap.c
2426
(uintptr_t)pv, (uintptr_t)pm, va, oflags);
sys/arch/arm/arm32/pmap.c
2446
pv->pv_flags &= ~PVF_NC;
sys/arch/arm/arm32/pmap.c
2535
pv = SLIST_NEXT(pv, pv_link);
sys/arch/arm/arm32/pmap.c
2584
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
2596
SLIST_FOREACH(pv, &md->pvh_list, pv_link) {
sys/arch/arm/arm32/pmap.c
2597
if (pmap_is_current(pv->pv_pmap)) {
sys/arch/arm/arm32/pmap.c
2598
flags |= pv->pv_flags;
sys/arch/arm/arm32/pmap.c
2603
if (pv->pv_flags & PVF_NC) {
sys/arch/arm/arm32/pmap.c
2608
} else if (is_src && (pv->pv_flags & PVF_WRITE) == 0)
sys/arch/arm/arm32/pmap.c
2614
page_to_clean = pv->pv_va;
sys/arch/arm/arm32/pmap.c
2615
pm_to_clean = pv->pv_pmap;
sys/arch/arm/arm32/pmap.c
2844
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
2889
for (pv = *pvp; pv != NULL;) {
sys/arch/arm/arm32/pmap.c
2890
pmap_t pm = pv->pv_pmap;
sys/arch/arm/arm32/pmap.c
2897
if (pm == pmap_kernel() && PV_IS_KENTRY_P(pv->pv_flags)) {
sys/arch/arm/arm32/pmap.c
2899
pvp = &SLIST_NEXT(pv, pv_link);
sys/arch/arm/arm32/pmap.c
2900
pv = *pvp;
sys/arch/arm/arm32/pmap.c
2924
pv = *pvp;
sys/arch/arm/arm32/pmap.c
2930
if (pv->pv_flags & PVF_WRITE)
sys/arch/arm/arm32/pmap.c
2937
*pvp = SLIST_NEXT(pv, pv_link); /* remove from list */
sys/arch/arm/arm32/pmap.c
2942
l2b = pmap_get_l2_bucket(pm, pv->pv_va);
sys/arch/arm/arm32/pmap.c
2943
KASSERTMSG(l2b != NULL, "%#lx", pv->pv_va);
sys/arch/arm/arm32/pmap.c
2945
ptep = &l2b->l2b_kva[l2pte_index(pv->pv_va)];
sys/arch/arm/arm32/pmap.c
2953
if (pv->pv_flags & PVF_WIRED)
sys/arch/arm/arm32/pmap.c
2956
flags |= pv->pv_flags;
sys/arch/arm/arm32/pmap.c
2965
pmap_tlb_invalidate_addr(pm, pv->pv_va);
sys/arch/arm/arm32/pmap.c
2972
pool_put(&pmap_pv_pool, pv);
sys/arch/arm/arm32/pmap.c
2979
pv = *pvp;
sys/arch/arm/arm32/pmap.c
3260
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
3274
pv = pmap_remove_pv(omd, opa, pm, va);
sys/arch/arm/arm32/pmap.c
3276
oflags = pv->pv_flags;
sys/arch/arm/arm32/pmap.c
3291
pv = new_pv;
sys/arch/arm/arm32/pmap.c
3293
if (pv == NULL) {
sys/arch/arm/arm32/pmap.c
3309
pmap_enter_pv(md, pa, pv, pm, va, nflags);
sys/arch/arm/arm32/pmap.c
3495
struct pv_entry *pv, *npv;
sys/arch/arm/arm32/pmap.c
3568
pv = pmap_remove_pv(md, pa, pm, sva);
sys/arch/arm/arm32/pmap.c
3571
if (pv != NULL) {
sys/arch/arm/arm32/pmap.c
3573
flags = pv->pv_flags;
sys/arch/arm/arm32/pmap.c
3576
pv, pv_link);
sys/arch/arm/arm32/pmap.c
3680
SLIST_FOREACH_SAFE(pv, &opv_list, pv_link, npv) {
sys/arch/arm/arm32/pmap.c
3681
pool_put(&pmap_pv_pool, pv);
sys/arch/arm/arm32/pmap.c
3691
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
3697
pv = pmap_remove_pv(md, pa, pmap_kernel(), va);
sys/arch/arm/arm32/pmap.c
3698
KASSERTMSG(pv, "pg %p (pa #%lx) va %#lx", pg, pa, va);
sys/arch/arm/arm32/pmap.c
3699
KASSERT(PV_IS_KENTRY_P(pv->pv_flags));
sys/arch/arm/arm32/pmap.c
3707
&& (pv->pv_flags & PVF_WRITE) != 0) {
sys/arch/arm/arm32/pmap.c
3718
return pv;
sys/arch/arm/arm32/pmap.c
3739
struct pv_entry *pv = NULL;
sys/arch/arm/arm32/pmap.c
3785
pv = pmap_kremove_pg(opg, va);
sys/arch/arm/arm32/pmap.c
3836
KASSERT(pv == NULL);
sys/arch/arm/arm32/pmap.c
3865
if (pv == NULL) {
sys/arch/arm/arm32/pmap.c
3866
pv = pool_get(&pmap_pv_pool, PR_NOWAIT);
sys/arch/arm/arm32/pmap.c
3867
KASSERT(pv != NULL);
sys/arch/arm/arm32/pmap.c
3870
pmap_enter_pv(md, pa, pv, pmap_kernel(), va,
sys/arch/arm/arm32/pmap.c
3883
if (pv != NULL)
sys/arch/arm/arm32/pmap.c
3884
pool_put(&pmap_pv_pool, pv);
sys/arch/arm/arm32/pmap.c
4402
struct pv_entry * const pv = pmap_find_pv(md, pm, va);
sys/arch/arm/arm32/pmap.c
4403
KASSERT(pv != NULL);
sys/arch/arm/arm32/pmap.c
4405
if (PV_IS_EXEC_P(pv->pv_flags)) {
sys/arch/arm/arm32/pmap.c
4504
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
4517
pv = pmap_find_pv(md, pm, va);
sys/arch/arm/arm32/pmap.c
4518
if (pv == NULL || PV_IS_KENTRY_P(pv->pv_flags)) {
sys/arch/arm/arm32/pmap.c
4531
if ((pv->pv_flags & PVF_WRITE) == 0) {
sys/arch/arm/arm32/pmap.c
4538
pv->pv_flags |= PVF_REF | PVF_MOD;
sys/arch/arm/arm32/pmap.c
4594
struct pv_entry *pv = pmap_find_pv(md, pm, va);
sys/arch/arm/arm32/pmap.c
4595
if (pv == NULL || PV_IS_KENTRY_P(pv->pv_flags)) {
sys/arch/arm/arm32/pmap.c
4602
pv->pv_flags |= PVF_REF;
sys/arch/arm/arm32/pmap.c
4619
if ((pv->pv_flags & PVF_EXEC) == 0) {
sys/arch/arm/arm32/pmap.c
4660
struct pv_entry * const pv = pmap_find_pv(md, pm, va);
sys/arch/arm/arm32/pmap.c
4661
if (pv == NULL || (pv->pv_flags & PVF_EXEC) == 0) {
sys/arch/arm/arm32/pmap.c
5924
pv_addr_t pv;
sys/arch/arm/arm32/pmap.c
5932
&pv);
sys/arch/arm/arm32/pmap.c
5933
pa = pv.pv_pa;
sys/arch/arm/arm32/pmap.c
6892
pv_addr_t *pv;
sys/arch/arm/arm32/pmap.c
6894
SLIST_FOREACH(pv, &kernel_pt_list, pv_list) {
sys/arch/arm/arm32/pmap.c
6895
if (pv->pv_pa == (pa & ~PGOFSET))
sys/arch/arm/arm32/pmap.c
6896
return pv->pv_va | (pa & PGOFSET);
sys/arch/arm/arm32/pmap.c
8000
struct pv_entry *pv;
sys/arch/arm/arm32/pmap.c
8017
SLIST_FOREACH(pv, &md->pvh_list, pv_link) {
sys/arch/arm/arm32/pmap.c
8019
(pm == pv->pv_pmap) ? '*' : ' ',
sys/arch/arm/arm32/pmap.c
8020
pv->pv_va, pv->pv_flags);
sys/arch/arm/arm32/pmap.c
8030
pv_addr_t *pv, *npv;
sys/arch/arm/arm32/pmap.c
8032
if ((pv = SLIST_FIRST(&pmap_boot_freeq)) != NULL) {
sys/arch/arm/arm32/pmap.c
8033
if (newpv->pv_pa < pv->pv_va) {
sys/arch/arm/arm32/pmap.c
8034
KASSERT(newpv->pv_pa + newpv->pv_size <= pv->pv_pa);
sys/arch/arm/arm32/pmap.c
8035
if (newpv->pv_pa + newpv->pv_size == pv->pv_pa) {
sys/arch/arm/arm32/pmap.c
8036
newpv->pv_size += pv->pv_size;
sys/arch/arm/arm32/pmap.c
8039
pv = NULL;
sys/arch/arm/arm32/pmap.c
8041
for (; (npv = SLIST_NEXT(pv, pv_list)) != NULL;
sys/arch/arm/arm32/pmap.c
8042
pv = npv) {
sys/arch/arm/arm32/pmap.c
8043
KASSERT(pv->pv_pa + pv->pv_size < npv->pv_pa);
sys/arch/arm/arm32/pmap.c
8044
KASSERT(pv->pv_pa < newpv->pv_pa);
sys/arch/arm/arm32/pmap.c
8047
if (pv->pv_pa + pv->pv_size == newpv->pv_pa) {
sys/arch/arm/arm32/pmap.c
8048
pv->pv_size += newpv->pv_size;
sys/arch/arm/arm32/pmap.c
8054
SLIST_INSERT_AFTER(pv, newpv, pv_list);
sys/arch/arm/arm32/pmap.c
8061
if (pv) {
sys/arch/arm/arm32/pmap.c
8062
SLIST_INSERT_AFTER(pv, newpv, pv_list);
sys/arch/arm/arm32/pmap.c
8072
pv_addr_t *pv, **pvp;
sys/arch/arm/arm32/pmap.c
8080
(pv = *pvp) != NULL;
sys/arch/arm/arm32/pmap.c
8081
pvp = &SLIST_NEXT(pv, pv_list)) {
sys/arch/arm/arm32/pmap.c
8087
KASSERT(pv->pv_size > 0);
sys/arch/arm/arm32/pmap.c
8088
if (pv->pv_size < amount)
sys/arch/arm/arm32/pmap.c
8092
if (((pv->pv_pa + off) & mask) == match
sys/arch/arm/arm32/pmap.c
8093
&& off + amount <= pv->pv_size)
sys/arch/arm/arm32/pmap.c
8099
rpv->pv_va = pv->pv_va + off;
sys/arch/arm/arm32/pmap.c
8100
rpv->pv_pa = pv->pv_pa + off;
sys/arch/arm/arm32/pmap.c
8102
pv->pv_size -= amount;
sys/arch/arm/arm32/pmap.c
8103
if (pv->pv_size == 0) {
sys/arch/arm/arm32/pmap.c
8105
KASSERT((vaddr_t) pv == rpv->pv_va);
sys/arch/arm/arm32/pmap.c
8106
*pvp = SLIST_NEXT(pv, pv_list);
sys/arch/arm/arm32/pmap.c
8108
KASSERT((vaddr_t) pv == rpv->pv_va);
sys/arch/arm/arm32/pmap.c
8110
*newpv = *pv;
sys/arch/arm/arm32/pmap.c
8114
} else if (off < pv->pv_size) {
sys/arch/arm/arm32/pmap.c
8116
*newpv = *pv;
sys/arch/arm/arm32/pmap.c
8121
SLIST_NEXT(pv, pv_list) = newpv;
sys/arch/arm/arm32/pmap.c
8122
pv->pv_size = off;
sys/arch/arm/arm32/pmap.c
8124
KASSERT((vaddr_t) pv != rpv->pv_va);
sys/arch/arm/arm32/pmap.c
8134
(pv = *pvp) != NULL;
sys/arch/arm/arm32/pmap.c
8135
pvp = &SLIST_NEXT(pv, pv_list)) {
sys/arch/arm/arm32/pmap.c
8136
if (SLIST_NEXT(pv, pv_list) == NULL)
sys/arch/arm/arm32/pmap.c
8147
if (spn == atop(pv->pv_pa + pv->pv_size)
sys/arch/arm/arm32/pmap.c
8148
&& pv->pv_va + pv->pv_size <= ptoa(epn)) {
sys/arch/arm/arm32/pmap.c
8149
rpv->pv_va = pv->pv_va;
sys/arch/arm/arm32/pmap.c
8150
rpv->pv_pa = pv->pv_pa;
sys/arch/arm/arm32/pmap.c
8154
ptoa(spn) + (pv->pv_va - pv->pv_pa),
sys/arch/arm/arm32/pmap.c
8156
amount - pv->pv_size,
sys/arch/arm/arm32/pmap.c
8160
uvm_physseg_unplug(spn, atop(amount - pv->pv_size));
sys/arch/arm/arm32/pmap.c
8172
pv_addr_t pv;
sys/arch/arm/arm32/pmap.c
8174
pmap_boot_pagealloc(size, 0, 0, &pv);
sys/arch/arm/arm32/pmap.c
8176
return pv.pv_va;
sys/arch/arm/arm32/pmap.c
976
pmap_enter_pv(struct vm_page_md *md, paddr_t pa, struct pv_entry *pv, pmap_t pm,
sys/arch/arm/arm32/pmap.c
983
(uintptr_t)pv, flags, 0, 0);
sys/arch/arm/arm32/pmap.c
987
pv->pv_pmap = pm;
sys/arch/arm/arm32/pmap.c
988
pv->pv_va = va;
sys/arch/arm/arm32/pmap.c
989
pv->pv_flags = flags;
sys/arch/cats/cats/cats_machdep.c
385
pv_addr_t * const pv = &bmi->bmi_freeblocks[i];
sys/arch/cats/cats/cats_machdep.c
386
paddr_t start = pv->pv_pa;
sys/arch/cats/cats/cats_machdep.c
387
paddr_t end = pv->pv_pa + pv->pv_size;
sys/arch/hppa/hppa/pmap.c
1267
struct pv_entry *pv, *npv;
sys/arch/hppa/hppa/pmap.c
1291
for (pv = md->pvh_list; pv != NULL; pv = npv) {
sys/arch/hppa/hppa/pmap.c
1292
npv = pv->pv_next;
sys/arch/hppa/hppa/pmap.c
1293
if (pv->pv_pmap != pmap)
sys/arch/hppa/hppa/pmap.c
1296
UVMHIST_LOG(maphist, " %#jx", pv->pv_va, 0, 0,
sys/arch/hppa/hppa/pmap.c
1299
va = pv->pv_va & PV_VAMASK;
sys/arch/hppa/hppa/pmap.c
694
struct pv_entry *pv;
sys/arch/hppa/hppa/pmap.c
696
pv = pool_get(&pmap_pv_pool, PR_NOWAIT);
sys/arch/hppa/hppa/pmap.c
698
return (pv);
sys/arch/hppa/hppa/pmap.c
702
pmap_pv_free(struct pv_entry *pv)
sys/arch/hppa/hppa/pmap.c
705
if (pv->pv_ptp)
sys/arch/hppa/hppa/pmap.c
706
pmap_pde_release(pv->pv_pmap, pv->pv_va & PV_VAMASK,
sys/arch/hppa/hppa/pmap.c
707
pv->pv_ptp);
sys/arch/hppa/hppa/pmap.c
709
pool_put(&pmap_pv_pool, pv);
sys/arch/hppa/hppa/pmap.c
741
struct pv_entry **pve, *pv;
sys/arch/hppa/hppa/pmap.c
745
for (pv = *(pve = &md->pvh_list);
sys/arch/hppa/hppa/pmap.c
746
pv; pv = *(pve = &(*pve)->pv_next)) {
sys/arch/hppa/hppa/pmap.c
747
if (pv->pv_pmap == pmap && (pv->pv_va & PV_VAMASK) == va) {
sys/arch/hppa/hppa/pmap.c
748
*pve = pv->pv_next;
sys/arch/hppa/hppa/pmap.c
761
return (pv);
sys/arch/ia64/ia64/pmap.c
1050
pmap_remove_entry(pmap_t pmap, struct vm_page *m, vaddr_t va, pv_entry_t pv)
sys/arch/ia64/ia64/pmap.c
1054
if (!pv) {
sys/arch/ia64/ia64/pmap.c
1055
TAILQ_FOREACH(pv, &m->mdpage.pv_list, pv_list) {
sys/arch/ia64/ia64/pmap.c
1056
if (pmap == PV_PMAP(pv) && va == pv->pv_va)
sys/arch/ia64/ia64/pmap.c
1061
if (pv) {
sys/arch/ia64/ia64/pmap.c
1062
TAILQ_REMOVE(&m->mdpage.pv_list, pv, pv_list);
sys/arch/ia64/ia64/pmap.c
1068
free_pv_entry(pmap, pv);
sys/arch/ia64/ia64/pmap.c
1082
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
1085
pv = get_pv_entry(pmap, false);
sys/arch/ia64/ia64/pmap.c
1086
pv->pv_va = va;
sys/arch/ia64/ia64/pmap.c
1087
TAILQ_INSERT_TAIL(&m->mdpage.pv_list, pv, pv_list);
sys/arch/ia64/ia64/pmap.c
1217
pv_entry_t pv, int freepte)
sys/arch/ia64/ia64/pmap.c
1239
error = pmap_remove_entry(pmap, m, va, pv);
sys/arch/ia64/ia64/pmap.c
2287
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
2303
TAILQ_FOREACH(pv, &pg->mdpage.pv_list, pv_list) {
sys/arch/ia64/ia64/pmap.c
2304
pmap = PV_PMAP(pv);
sys/arch/ia64/ia64/pmap.c
2305
va = pv->pv_va;
sys/arch/ia64/ia64/pmap.c
2330
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
2358
TAILQ_FOREACH(pv, &pg->mdpage.pv_list, pv_list) {
sys/arch/ia64/ia64/pmap.c
2359
pmap = PV_PMAP(pv);
sys/arch/ia64/ia64/pmap.c
2362
pte = pmap_find_vhpt(pv->pv_va);
sys/arch/ia64/ia64/pmap.c
2366
pmap_invalidate_page(pv->pv_va);
sys/arch/ia64/ia64/pmap.c
2392
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
2404
TAILQ_FOREACH(pv, &pg->mdpage.pv_list, pv_list) {
sys/arch/ia64/ia64/pmap.c
2405
pmap = PV_PMAP(pv);
sys/arch/ia64/ia64/pmap.c
2408
pte = pmap_find_vhpt(pv->pv_va);
sys/arch/ia64/ia64/pmap.c
2413
pmap_invalidate_page(pv->pv_va);
sys/arch/ia64/ia64/pmap.c
2432
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
2453
TAILQ_FOREACH(pv, &pg->mdpage.pv_list, pv_list) {
sys/arch/ia64/ia64/pmap.c
2454
pmap = PV_PMAP(pv);
sys/arch/ia64/ia64/pmap.c
2457
pte = pmap_find_vhpt(pv->pv_va);
sys/arch/ia64/ia64/pmap.c
2483
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
2494
TAILQ_FOREACH(pv, &pg->mdpage.pv_list, pv_list) {
sys/arch/ia64/ia64/pmap.c
2495
pmap = PV_PMAP(pv);
sys/arch/ia64/ia64/pmap.c
2498
pte = pmap_find_vhpt(pv->pv_va);
sys/arch/ia64/ia64/pmap.c
2613
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
2622
while ((pv = TAILQ_FIRST(&m->mdpage.pv_list)) != NULL) {
sys/arch/ia64/ia64/pmap.c
2624
pmap_t pmap = PV_PMAP(pv);
sys/arch/ia64/ia64/pmap.c
2625
vaddr_t va = pv->pv_va;
sys/arch/ia64/ia64/pmap.c
2634
pmap_remove_pte(pmap, pte, va, pv, 1);
sys/arch/ia64/ia64/pmap.c
293
static void free_pv_entry(pmap_t pmap, pv_entry_t pv);
sys/arch/ia64/ia64/pmap.c
299
vaddr_t va, pv_entry_t pv, int freepte);
sys/arch/ia64/ia64/pmap.c
651
pv_to_chunk(pv_entry_t pv)
sys/arch/ia64/ia64/pmap.c
653
return ((struct pv_chunk *)((uintptr_t)pv & ~(uintptr_t)PAGE_MASK));
sys/arch/ia64/ia64/pmap.c
656
#define PV_PMAP(pv) (pv_to_chunk(pv)->pc_pmap)
sys/arch/ia64/ia64/pmap.c
694
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
735
pv = &pc->pc_pventry[idx];
sys/arch/ia64/ia64/pmap.c
736
va = pv->pv_va;
sys/arch/ia64/ia64/pmap.c
747
TAILQ_REMOVE(&m->mdpage.pv_list, pv, pv_list);
sys/arch/ia64/ia64/pmap.c
805
free_pv_entry(pmap_t pmap, pv_entry_t pv)
sys/arch/ia64/ia64/pmap.c
815
pc = pv_to_chunk(pv);
sys/arch/ia64/ia64/pmap.c
816
idx = pv - &pc->pc_pventry[0];
sys/arch/ia64/ia64/pmap.c
868
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
887
pv = &pc->pc_pventry[idx];
sys/arch/ia64/ia64/pmap.c
893
return (pv); /* not full, return */
sys/arch/ia64/ia64/pmap.c
898
return (pv);
sys/arch/ia64/ia64/pmap.c
924
pv = &pc->pc_pventry[0];
sys/arch/ia64/ia64/pmap.c
927
return (pv);
sys/arch/ia64/ia64/pmap.c
937
pv_entry_t pv;
sys/arch/ia64/ia64/pmap.c
941
if ((pv = get_pv_entry(pmap, true)) != NULL) {
sys/arch/ia64/ia64/pmap.c
942
pv->pv_va = va;
sys/arch/ia64/ia64/pmap.c
943
TAILQ_INSERT_TAIL(&m->mdpage.pv_list, pv, pv_list);
sys/arch/m68k/include/pmap_68k.h
129
#define PV_VA(pv) ((pv)->pv_vf & ~PAGE_MASK)
sys/arch/m68k/include/pmap_68k.h
371
#define VM_MDPAGE_SETPVP(pvp, pv) \
sys/arch/m68k/include/pmap_68k.h
381
((uintptr_t)(pv) | \
sys/arch/m68k/m68k/pmap_68k.c
1688
pmap_pv_pte(struct pv_entry * const pv)
sys/arch/m68k/m68k/pmap_68k.c
1690
const vaddr_t va = PV_VA(pv);
sys/arch/m68k/m68k/pmap_68k.c
1692
if (__predict_true(pv->pv_pmap != pmap_kernel())) {
sys/arch/m68k/m68k/pmap_68k.c
1693
KASSERT(pv->pv_pt != NULL);
sys/arch/m68k/m68k/pmap_68k.c
1694
return &pv->pv_pt->pt_entries[pmap_pt_index(va)];
sys/arch/m68k/m68k/pmap_68k.c
1725
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_68k.c
1745
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
1746
if (pmap == pv->pv_pmap && va == PV_VA(pv)) {
sys/arch/m68k/m68k/pmap_68k.c
1837
for (pv = newpv->pv_next; pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
1839
ptep = pmap_pv_pte(pv);
sys/arch/m68k/m68k/pmap_68k.c
1844
if (active_pmap(pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
1845
TBIS(PV_VA(pv));
sys/arch/m68k/m68k/pmap_68k.c
1917
for (pv = newpv->pv_next; pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
1918
if (MATCHING_PMAP(pmap, pv->pv_pmap) &&
sys/arch/m68k/m68k/pmap_68k.c
1919
CONFLICTING_ALIAS(va, PV_VA(pv))) {
sys/arch/m68k/m68k/pmap_68k.c
1932
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
1933
if (MATCHING_PMAP(pmap, pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
1935
pv->pv_vf |= pv_flags;
sys/arch/m68k/m68k/pmap_68k.c
1936
pte_set(pmap_pv_pte(pv), PTE51_CI);
sys/arch/m68k/m68k/pmap_68k.c
1937
if (active_pmap(pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
1938
TBIS(PV_VA(pv));
sys/arch/m68k/m68k/pmap_68k.c
1939
if (pv->pv_pmap == pmap_kernel()) {
sys/arch/m68k/m68k/pmap_68k.c
1966
struct pv_entry **pvp, *pv;
sys/arch/m68k/m68k/pmap_68k.c
1973
for (pvp = VM_MDPAGE_HEAD_PVP(pg), pv = VM_MDPAGE_PVS(pg);
sys/arch/m68k/m68k/pmap_68k.c
1974
pv != NULL;
sys/arch/m68k/m68k/pmap_68k.c
1975
pvp = &pv->pv_next, pv = *pvp) {
sys/arch/m68k/m68k/pmap_68k.c
1976
if (pmap == pv->pv_pmap && va == PV_VA(pv)) {
sys/arch/m68k/m68k/pmap_68k.c
1981
KASSERT(pv != NULL);
sys/arch/m68k/m68k/pmap_68k.c
1982
VM_MDPAGE_SETPVP(pvp, pv->pv_next);
sys/arch/m68k/m68k/pmap_68k.c
1983
LIST_REMOVE(pv, pv_pmlist);
sys/arch/m68k/m68k/pmap_68k.c
1986
LIST_INSERT_HEAD(&pc->pc_pvlist, pv, pv_pmlist);
sys/arch/m68k/m68k/pmap_68k.c
2014
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
2015
if (pv->pv_vf & PV_F_CI_USR) {
sys/arch/m68k/m68k/pmap_68k.c
2024
KASSERT(pv == NULL);
sys/arch/m68k/m68k/pmap_68k.c
2026
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
2027
ptep = pmap_pv_pte(pv);
sys/arch/m68k/m68k/pmap_68k.c
2032
if (active_pmap(pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
2033
TBIS(PV_VA(pv));
sys/arch/m68k/m68k/pmap_68k.c
2054
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
2055
if (! MATCHING_PMAP(pmap, pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
2058
if (pv->pv_vf & all_ci_flags) {
sys/arch/m68k/m68k/pmap_68k.c
2067
all_ci_flags |= pv->pv_vf & PV_F_CI_VAC;
sys/arch/m68k/m68k/pmap_68k.c
2069
KASSERT(pv == NULL);
sys/arch/m68k/m68k/pmap_68k.c
2077
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
2078
if (! MATCHING_PMAP(pmap, pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
2079
all_ci_flags |= pv->pv_vf;
sys/arch/m68k/m68k/pmap_68k.c
2082
pte_mask(pmap_pv_pte(pv), ~((uint32_t)PTE51_CI));
sys/arch/m68k/m68k/pmap_68k.c
2083
if (active_pmap(pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
2084
TBIS(PV_VA(pv));
sys/arch/m68k/m68k/pmap_68k.c
2471
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_68k.c
2508
while ((pv = LIST_FIRST(&pmap->pm_pvlist)) != NULL) {
sys/arch/m68k/m68k/pmap_68k.c
2509
KASSERT(pv->pv_pmap == pmap);
sys/arch/m68k/m68k/pmap_68k.c
2510
opte = pte_load(pmap_pv_pte(pv));
sys/arch/m68k/m68k/pmap_68k.c
2514
pmap_pv_remove(pmap, pg, PV_VA(pv), &pc);
sys/arch/m68k/m68k/pmap_68k.c
2538
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_68k.c
2556
while ((pv = VM_MDPAGE_PVS(pg)) != NULL) {
sys/arch/m68k/m68k/pmap_68k.c
2557
pmap_busy(pv->pv_pmap);
sys/arch/m68k/m68k/pmap_68k.c
2558
pmap_remove_mapping(pv->pv_pmap, PV_VA(pv), pmap_pv_pte(pv),
sys/arch/m68k/m68k/pmap_68k.c
2559
pv->pv_pt, pg, PRM_TFLUSH|PRM_CFLUSH, &pc);
sys/arch/m68k/m68k/pmap_68k.c
2560
pmap_unbusy(pv->pv_pmap);
sys/arch/m68k/m68k/pmap_68k.c
3291
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_68k.c
3298
for (pv = VM_MDPAGE_PVS(pg);
sys/arch/m68k/m68k/pmap_68k.c
3299
(combined_pte & bit) == 0 && pv != NULL;
sys/arch/m68k/m68k/pmap_68k.c
3300
pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
3301
pmap_busy(pv->pv_pmap);
sys/arch/m68k/m68k/pmap_68k.c
3302
combined_pte |= pte_load(pmap_pv_pte(pv));
sys/arch/m68k/m68k/pmap_68k.c
3303
pmap_unbusy(pv->pv_pmap);
sys/arch/m68k/m68k/pmap_68k.c
3346
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_68k.c
3380
for (pv = VM_MDPAGE_PVS(pg); pv != NULL; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_68k.c
3381
pmap_busy(pv->pv_pmap);
sys/arch/m68k/m68k/pmap_68k.c
3383
ptep = pmap_pv_pte(pv);
sys/arch/m68k/m68k/pmap_68k.c
3412
if (active_pmap(pv->pv_pmap)) {
sys/arch/m68k/m68k/pmap_68k.c
3413
TBIS(PV_VA(pv));
sys/arch/m68k/m68k/pmap_68k.c
3415
pmap_unbusy(pv->pv_pmap);
sys/arch/m68k/m68k/pmap_68k.c
793
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_68k.c
803
pv = pool_get(&pmap_pv_pool, nowait ? PR_NOWAIT : 0);
sys/arch/m68k/m68k/pmap_68k.c
804
if (__predict_true(pv != NULL)) {
sys/arch/m68k/m68k/pmap_68k.c
805
KASSERT((((uintptr_t)pv) & PVH_ATTR_MASK) == 0);
sys/arch/m68k/m68k/pmap_68k.c
807
return pv;
sys/arch/m68k/m68k/pmap_68k.c
811
pmap_pv_free(struct pv_entry *pv)
sys/arch/m68k/m68k/pmap_68k.c
813
pool_put(&pmap_pv_pool, pv);
sys/arch/m68k/m68k/pmap_68k.c
837
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_68k.c
851
while ((pv = LIST_FIRST(&pc->pc_pvlist)) != NULL) {
sys/arch/m68k/m68k/pmap_68k.c
852
LIST_REMOVE(pv, pv_pmlist);
sys/arch/m68k/m68k/pmap_68k.c
853
pmap_pv_free(pv);
sys/arch/m68k/m68k/pmap_motorola.c
1021
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
1023
while (pv->pv_pmap != NULL) {
sys/arch/m68k/m68k/pmap_motorola.c
1025
pte = pmap_pte(pv->pv_pmap, pv->pv_va);
sys/arch/m68k/m68k/pmap_motorola.c
1027
if (!pmap_ste_v(pv->pv_pmap, pv->pv_va) ||
sys/arch/m68k/m68k/pmap_motorola.c
1031
pmap_remove_mapping(pv->pv_pmap, pv->pv_va,
sys/arch/m68k/m68k/pmap_motorola.c
1252
struct pv_entry *pv, *npv;
sys/arch/m68k/m68k/pmap_motorola.c
1256
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
1261
pv, pv->pv_va, pv->pv_pmap, pv->pv_next));
sys/arch/m68k/m68k/pmap_motorola.c
1265
if (pv->pv_pmap == NULL) {
sys/arch/m68k/m68k/pmap_motorola.c
1266
pv->pv_va = va;
sys/arch/m68k/m68k/pmap_motorola.c
1267
pv->pv_pmap = pmap;
sys/arch/m68k/m68k/pmap_motorola.c
1268
pv->pv_next = NULL;
sys/arch/m68k/m68k/pmap_motorola.c
1269
pv->pv_ptste = NULL;
sys/arch/m68k/m68k/pmap_motorola.c
1270
pv->pv_ptpmap = NULL;
sys/arch/m68k/m68k/pmap_motorola.c
1279
for (npv = pv; npv; npv = npv->pv_next)
sys/arch/m68k/m68k/pmap_motorola.c
1292
npv->pv_next = pv->pv_next;
sys/arch/m68k/m68k/pmap_motorola.c
1295
pv->pv_next = npv;
sys/arch/m68k/m68k/pmap_motorola.c
1329
((pmap == pv->pv_pmap ||
sys/arch/m68k/m68k/pmap_motorola.c
1331
pv->pv_pmap == pmap_kernel()) &&
sys/arch/m68k/m68k/pmap_motorola.c
1332
((pv->pv_va & pmap_aliasmask) !=
sys/arch/m68k/m68k/pmap_motorola.c
1731
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_motorola.c
1748
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
1749
if (pv->pv_pmap != pmap_kernel() ||
sys/arch/m68k/m68k/pmap_motorola.c
1753
if (pv->pv_ptste && pv->pv_ptpmap == pmap_kernel())
sys/arch/m68k/m68k/pmap_motorola.c
1755
} while ((pv = pv->pv_next));
sys/arch/m68k/m68k/pmap_motorola.c
1756
if (pv == NULL)
sys/arch/m68k/m68k/pmap_motorola.c
1759
if (pv->pv_va < (vaddr_t)Sysmap ||
sys/arch/m68k/m68k/pmap_motorola.c
1760
pv->pv_va >= (vaddr_t)Sysmap + M68K_MAX_PTSIZE) {
sys/arch/m68k/m68k/pmap_motorola.c
1766
pte = (pt_entry_t *)(pv->pv_va + PAGE_SIZE);
sys/arch/m68k/m68k/pmap_motorola.c
1767
while (--pte >= (pt_entry_t *)pv->pv_va && *pte == PG_NV)
sys/arch/m68k/m68k/pmap_motorola.c
1769
if (pte >= (pt_entry_t *)pv->pv_va)
sys/arch/m68k/m68k/pmap_motorola.c
1775
pv->pv_va, *pv->pv_ptste, pv->pv_ptste);
sys/arch/m68k/m68k/pmap_motorola.c
1780
ste = pv->pv_ptste;
sys/arch/m68k/m68k/pmap_motorola.c
1788
if (!pmap_extract(pmap, pv->pv_va, &kpa)) {
sys/arch/m68k/m68k/pmap_motorola.c
1790
pv->pv_va, *pv->pv_ptste, pv->pv_ptste);
sys/arch/m68k/m68k/pmap_motorola.c
1793
pmap_remove_mapping(pmap, pv->pv_va, NULL,
sys/arch/m68k/m68k/pmap_motorola.c
2110
struct pv_entry *pv, *npv, *opv = NULL;
sys/arch/m68k/m68k/pmap_motorola.c
2252
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
2263
if (pmap == pv->pv_pmap && va == pv->pv_va) {
sys/arch/m68k/m68k/pmap_motorola.c
2264
ste = pv->pv_ptste;
sys/arch/m68k/m68k/pmap_motorola.c
2265
ptpmap = pv->pv_ptpmap;
sys/arch/m68k/m68k/pmap_motorola.c
2266
npv = pv->pv_next;
sys/arch/m68k/m68k/pmap_motorola.c
2268
*pv = *npv;
sys/arch/m68k/m68k/pmap_motorola.c
2271
pv->pv_pmap = NULL;
sys/arch/m68k/m68k/pmap_motorola.c
2273
for (npv = pv->pv_next; npv; npv = npv->pv_next) {
sys/arch/m68k/m68k/pmap_motorola.c
2276
pv = npv;
sys/arch/m68k/m68k/pmap_motorola.c
2284
pv->pv_next = npv->pv_next;
sys/arch/m68k/m68k/pmap_motorola.c
2287
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
2297
pv->pv_pmap && pv->pv_next == NULL && (pvh->pvh_attrs & PVH_CI)) {
sys/arch/m68k/m68k/pmap_motorola.c
2406
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_motorola.c
2411
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
2438
if (pv->pv_pmap != NULL) {
sys/arch/m68k/m68k/pmap_motorola.c
2439
for (; pv; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_motorola.c
2440
pte = pmap_pte(pv->pv_pmap, pv->pv_va);
sys/arch/m68k/m68k/pmap_motorola.c
2463
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_motorola.c
2476
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
2491
if (pv->pv_pmap != NULL) {
sys/arch/m68k/m68k/pmap_motorola.c
2495
for (; pv; pv = pv->pv_next) {
sys/arch/m68k/m68k/pmap_motorola.c
2497
toflush |= (pv->pv_pmap == pmap_kernel()) ? 2 : 1;
sys/arch/m68k/m68k/pmap_motorola.c
2499
va = pv->pv_va;
sys/arch/m68k/m68k/pmap_motorola.c
2500
pte = pmap_pte(pv->pv_pmap, va);
sys/arch/m68k/m68k/pmap_motorola.c
2535
if (active_pmap(pv->pv_pmap))
sys/arch/m68k/m68k/pmap_motorola.c
2556
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_motorola.c
2749
pv = &pvh->pvh_first;
sys/arch/m68k/m68k/pmap_motorola.c
2752
if (pv->pv_pmap == pmap_kernel() && pv->pv_va == va)
sys/arch/m68k/m68k/pmap_motorola.c
2754
} while ((pv = pv->pv_next));
sys/arch/m68k/m68k/pmap_motorola.c
2756
pv = NULL;
sys/arch/m68k/m68k/pmap_motorola.c
2759
if (pv == NULL)
sys/arch/m68k/m68k/pmap_motorola.c
2762
pv->pv_ptste = ste;
sys/arch/m68k/m68k/pmap_motorola.c
2763
pv->pv_ptpmap = pmap;
sys/arch/m68k/m68k/pmap_motorola.c
305
#define pmap_free_pv(pv) pool_put(&pmap_pv_pool, (pv))
sys/arch/m68k/m68k/pmap_motorola.c
3060
struct pv_entry *pv;
sys/arch/m68k/m68k/pmap_motorola.c
3064
for (pv = &pvh->pvh_first; pv; pv = pv->pv_next)
sys/arch/m68k/m68k/pmap_motorola.c
3066
pv->pv_pmap, pv->pv_va, pv->pv_ptste, pv->pv_ptpmap);
sys/arch/m68k/m68k/pmap_motorola.c
994
struct pv_entry *pv;
sys/arch/mips/mips/pmap_machdep.c
1003
if (mips_cache_badalias(pv->pv_va, va)) {
sys/arch/mips/mips/pmap_machdep.c
1057
pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/mips/mips/pmap_machdep.c
1058
pv_entry_t pv0 = pv->pv_next;
sys/arch/mips/mips/pmap_machdep.c
1061
if (mips_cache_badalias(pv->pv_va, pv0->pv_va))
sys/arch/mips/mips/pmap_machdep.c
180
pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/mips/mips/pmap_machdep.c
189
if (!MIPS_CACHE_VIRTUAL_ALIAS || !mips_cache_badalias(pv->pv_va, pa)) {
sys/arch/mips/mips/pmap_machdep.c
219
? pv->pv_va
sys/arch/mips/mips/pmap_machdep.c
246
&& mips_cache_badalias(pv->pv_va, va)) {
sys/arch/mips/mips/pmap_machdep.c
247
register_t ova = (intptr_t)trunc_page(pv->pv_va);
sys/arch/mips/mips/pmap_machdep.c
252
if (pv->pv_pmap == NULL)
sys/arch/mips/mips/pmap_machdep.c
253
pv->pv_va = va;
sys/arch/mips/mips/pmap_machdep.c
270
pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/mips/mips/pmap_machdep.c
286
|| (pv->pv_pmap != NULL
sys/arch/mips/mips/pmap_machdep.c
287
&& mips_cache_badalias(pv->pv_va, va))) {
sys/arch/mips/mips/pmap_machdep.c
707
pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/mips/mips/pmap_machdep.c
708
const register_t va = (intptr_t)trunc_page(pv->pv_va);
sys/arch/mips/mips/pmap_machdep.c
738
pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/mips/mips/pmap_machdep.c
739
vaddr_t last_va = trunc_page(pv->pv_va);
sys/arch/mips/mips/pmap_machdep.c
742
KASSERT(pv->pv_pmap == NULL);
sys/arch/mips/mips/pmap_machdep.c
743
KASSERT(pv->pv_next == NULL);
sys/arch/mips/mips/pmap_machdep.c
755
pv->pv_va = va;
sys/arch/mips/mips/pmap_machdep.c
775
pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/mips/mips/pmap_machdep.c
778
pv->pv_va = va;
sys/arch/mips/mips/pmap_machdep.c
780
KASSERT(pv->pv_pmap == NULL);
sys/arch/mips/mips/pmap_machdep.c
781
KASSERT(pv->pv_next == NULL);
sys/arch/mips/mips/pmap_machdep.c
948
pv_entry_t pv = &mdpg->mdpg_first;
sys/arch/mips/mips/pmap_machdep.c
960
if (__predict_true(!mips_cache_badalias(pv->pv_va, va))) {
sys/arch/mips/mips/pmap_machdep.c
963
KASSERT(pv->pv_pmap != NULL);
sys/arch/mips/mips/pmap_machdep.c
965
for (pv_entry_t npv = pv; npv && npv->pv_pmap;) {
sys/arch/mips/mips/pmap_machdep.c
985
npv = pv;
sys/arch/powerpc/ibm4xx/pmap.c
1119
struct pv_entry *pvh, *pv, *npv;
sys/arch/powerpc/ibm4xx/pmap.c
1129
for (pv = pvh->pv_next; pv; pv = npv) {
sys/arch/powerpc/ibm4xx/pmap.c
1130
npv = pv->pv_next;
sys/arch/powerpc/ibm4xx/pmap.c
1132
pm = pv->pv_pm;
sys/arch/powerpc/ibm4xx/pmap.c
1133
va = PV_VA(pv);
sys/arch/powerpc/ibm4xx/pmap.c
1139
pv = pvh;
sys/arch/powerpc/ibm4xx/pmap.c
1140
pm = pv->pv_pm;
sys/arch/powerpc/ibm4xx/pmap.c
1141
va = PV_VA(pv);
sys/arch/powerpc/ibm4xx/pmap.c
158
#define PV_WIRE(pv) ((pv)->pv_va |= PV_WIRED)
sys/arch/powerpc/ibm4xx/pmap.c
159
#define PV_UNWIRE(pv) ((pv)->pv_va &= ~PV_WIRED)
sys/arch/powerpc/ibm4xx/pmap.c
160
#define PV_ISWIRED(pv) ((pv)->pv_va & PV_WIRED)
sys/arch/powerpc/ibm4xx/pmap.c
161
#define PV_VA(pv) ((pv)->pv_va & ~PV_WIRED)
sys/arch/powerpc/ibm4xx/pmap.c
162
#define PV_CMPVA(va,pv) (!(PV_VA(pv) ^ (va)))
sys/arch/powerpc/ibm4xx/pmap.c
480
struct pv_entry *pv;
sys/arch/powerpc/ibm4xx/pmap.c
492
pv = pv_table = (struct pv_entry *)addr;
sys/arch/powerpc/ibm4xx/pmap.c
494
pv++->pv_pm = NULL;
sys/arch/powerpc/ibm4xx/pmap.c
495
pmap_attrib = (char *)pv;
sys/arch/powerpc/ibm4xx/pmap.c
496
memset(pv, 0, npgs);
sys/arch/powerpc/ibm4xx/pmap.c
498
pv = pv_table;
sys/arch/powerpc/ibm4xx/pmap.c
503
uvm_physseg_get_pmseg(bank)->pvent = pv;
sys/arch/powerpc/ibm4xx/pmap.c
505
pv += sz;
sys/arch/powerpc/ibm4xx/pmap.c
725
struct pv_entry *pv, *npv;
sys/arch/powerpc/ibm4xx/pmap.c
732
pv = pa_to_pv(pa);
sys/arch/powerpc/ibm4xx/pmap.c
733
if (!pv->pv_pm) {
sys/arch/powerpc/ibm4xx/pmap.c
737
pv->pv_va = va;
sys/arch/powerpc/ibm4xx/pmap.c
738
pv->pv_pm = pm;
sys/arch/powerpc/ibm4xx/pmap.c
739
pv->pv_next = NULL;
sys/arch/powerpc/ibm4xx/pmap.c
754
npv->pv_next = pv->pv_next;
sys/arch/powerpc/ibm4xx/pmap.c
755
pv->pv_next = npv;
sys/arch/powerpc/ibm4xx/pmap.c
756
pv = npv;
sys/arch/powerpc/ibm4xx/pmap.c
759
PV_WIRE(pv);
sys/arch/powerpc/ibm4xx/pmap.c
771
struct pv_entry *pv, *npv;
sys/arch/powerpc/ibm4xx/pmap.c
776
pv = pa_to_pv(pa);
sys/arch/powerpc/ibm4xx/pmap.c
777
if (!pv)
sys/arch/powerpc/ibm4xx/pmap.c
786
if (pm == pv->pv_pm && PV_CMPVA(va, pv)) {
sys/arch/powerpc/ibm4xx/pmap.c
787
if (PV_ISWIRED(pv))
sys/arch/powerpc/ibm4xx/pmap.c
789
if ((npv = pv->pv_next)) {
sys/arch/powerpc/ibm4xx/pmap.c
790
*pv = *npv;
sys/arch/powerpc/ibm4xx/pmap.c
793
pv->pv_pm = NULL;
sys/arch/powerpc/ibm4xx/pmap.c
795
for (; (npv = pv->pv_next) != NULL; pv = npv)
sys/arch/powerpc/ibm4xx/pmap.c
799
pv->pv_next = npv->pv_next;
sys/arch/powerpc/ibm4xx/pmap.c
911
struct pv_entry *pv;
sys/arch/powerpc/ibm4xx/pmap.c
918
pv = pa_to_pv(pa);
sys/arch/powerpc/ibm4xx/pmap.c
919
if (!pv)
sys/arch/powerpc/ibm4xx/pmap.c
924
while (pv != NULL) {
sys/arch/powerpc/ibm4xx/pmap.c
925
if (pm == pv->pv_pm && PV_CMPVA(va, pv)) {
sys/arch/powerpc/ibm4xx/pmap.c
926
if (PV_ISWIRED(pv)) {
sys/arch/powerpc/ibm4xx/pmap.c
927
PV_UNWIRE(pv);
sys/arch/powerpc/ibm4xx/pmap.c
932
pv = pv->pv_next;
sys/arch/powerpc/powerpc/db_interface.c
559
struct pv_entry *pv;
sys/arch/powerpc/powerpc/db_interface.c
565
pv = pa_to_pv(addr);
sys/arch/powerpc/powerpc/db_interface.c
566
db_printf("pv at %p\n", pv);
sys/arch/powerpc/powerpc/db_interface.c
567
while (pv && pv->pv_pm) {
sys/arch/powerpc/powerpc/db_interface.c
568
db_printf("next %p va %p pmap %p\n", pv->pv_next,
sys/arch/powerpc/powerpc/db_interface.c
569
(void *)pv->pv_va, pv->pv_pm);
sys/arch/powerpc/powerpc/db_interface.c
570
pv = pv->pv_next;
sys/arch/sh3/sh3/pmap.c
472
struct pv_entry *pv;
sys/arch/sh3/sh3/pmap.c
488
SLIST_FOREACH(pv, &pvh->pvh_head, pv_link) {
sys/arch/sh3/sh3/pmap.c
490
sh_cache_indexof(pv->pv_va)) {
sys/arch/sh3/sh3/pmap.c
491
pmap_remove(pv->pv_pmap, pv->pv_va,
sys/arch/sh3/sh3/pmap.c
492
pv->pv_va + PAGE_SIZE);
sys/arch/sh3/sh3/pmap.c
500
pv = __pmap_pv_alloc();
sys/arch/sh3/sh3/pmap.c
501
if (pv == NULL) {
sys/arch/sh3/sh3/pmap.c
505
pv->pv_pmap = pmap;
sys/arch/sh3/sh3/pmap.c
506
pv->pv_va = va;
sys/arch/sh3/sh3/pmap.c
508
SLIST_INSERT_HEAD(&pvh->pvh_head, pv, pv_link);
sys/arch/sh3/sh3/pmap.c
552
struct pv_entry *pv;
sys/arch/sh3/sh3/pmap.c
557
SLIST_FOREACH(pv, &pvh->pvh_head, pv_link) {
sys/arch/sh3/sh3/pmap.c
558
if (pv->pv_pmap == pmap && pv->pv_va == vaddr) {
sys/arch/sh3/sh3/pmap.c
567
(pv->pv_va, PAGE_SIZE);
sys/arch/sh3/sh3/pmap.c
570
SLIST_REMOVE(&pvh->pvh_head, pv, pv_entry, pv_link);
sys/arch/sh3/sh3/pmap.c
571
__pmap_pv_free(pv);
sys/arch/sh3/sh3/pmap.c
577
SLIST_FOREACH(pv, &pvh->pvh_head, pv_link)
sys/arch/sh3/sh3/pmap.c
578
KDASSERT(!(pv->pv_pmap == pmap && pv->pv_va == vaddr));
sys/arch/sh3/sh3/pmap.c
706
struct pv_entry *pv;
sys/arch/sh3/sh3/pmap.c
719
SLIST_FOREACH(pv, &pvh->pvh_head, pv_link) {
sys/arch/sh3/sh3/pmap.c
720
pmap = pv->pv_pmap;
sys/arch/sh3/sh3/pmap.c
721
va = pv->pv_va;
sys/arch/sh3/sh3/pmap.c
732
while ((pv = SLIST_FIRST(&pvh->pvh_head)) != NULL) {
sys/arch/sh3/sh3/pmap.c
733
pmap = pv->pv_pmap;
sys/arch/sh3/sh3/pmap.c
734
va = pv->pv_va;
sys/arch/sh3/sh3/pmap.c
79
#define __pmap_pv_free(pv) pool_put(&__pmap_pv_pool, (pv))
sys/arch/sh3/sh3/pmap.c
810
struct pv_entry *pv;
sys/arch/sh3/sh3/pmap.c
823
SLIST_FOREACH(pv, &pvh->pvh_head, pv_link) {
sys/arch/sh3/sh3/pmap.c
824
pmap = pv->pv_pmap;
sys/arch/sh3/sh3/pmap.c
825
va = pv->pv_va;
sys/arch/sh3/sh3/pmap.c
853
struct pv_entry *pv;
sys/arch/sh3/sh3/pmap.c
876
SLIST_FOREACH(pv, &pvh->pvh_head, pv_link) {
sys/arch/sh3/sh3/pmap.c
877
pmap = pv->pv_pmap;
sys/arch/sh3/sh3/pmap.c
878
va = pv->pv_va;
sys/arch/sparc/sparc/pmap.c
2369
struct pvlist *pv;
sys/arch/sparc/sparc/pmap.c
2376
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
2380
if (pv->pv_pmap == NULL) {
sys/arch/sparc/sparc/pmap.c
2385
for (; pv != NULL; pv = pv->pv_next) {
sys/arch/sparc/sparc/pmap.c
2386
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
2387
va = pv->pv_va;
sys/arch/sparc/sparc/pmap.c
2439
struct pvlist *pv;
sys/arch/sparc/sparc/pmap.c
2446
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
2449
if (pv->pv_pmap == NULL) {
sys/arch/sparc/sparc/pmap.c
2455
flags = pv->pv_flags;
sys/arch/sparc/sparc/pmap.c
2456
for (; pv != NULL; pv = pv->pv_next) {
sys/arch/sparc/sparc/pmap.c
2457
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
2458
va = pv->pv_va;
sys/arch/sparc/sparc/pmap.c
2576
struct pvlist *pv0, *pv, *npv;
sys/arch/sparc/sparc/pmap.c
2612
for (pv = pv0; pv != NULL; pv = pv->pv_next) {
sys/arch/sparc/sparc/pmap.c
2613
if ((pv->pv_flags & PV_NC) != 0) {
sys/arch/sparc/sparc/pmap.c
2621
va, pv->pv_va);
sys/arch/sparc/sparc/pmap.c
2624
if (BADALIAS(va, pv->pv_va)) {
sys/arch/sparc/sparc/pmap.c
2628
va, pv->pv_va, pg);
sys/arch/sparc/sparc/pmap.c
2663
struct pvlist *pv;
sys/arch/sparc/sparc/pmap.c
2669
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
2670
if (pv->pv_pmap == NULL)
sys/arch/sparc/sparc/pmap.c
2673
for (; pv != NULL; pv = pv->pv_next) {
sys/arch/sparc/sparc/pmap.c
2674
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
2676
va = pv->pv_va;
sys/arch/sparc/sparc/pmap.c
2706
struct pvlist *pv;
sys/arch/sparc/sparc/pmap.c
2716
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
2717
if (pv->pv_pmap == NULL) {
sys/arch/sparc/sparc/pmap.c
2723
flags = pv->pv_flags;
sys/arch/sparc/sparc/pmap.c
2724
for (; pv != NULL; pv = pv->pv_next) {
sys/arch/sparc/sparc/pmap.c
2725
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
2726
va = pv->pv_va;
sys/arch/sparc/sparc/pmap.c
2836
struct pvlist *pv0, *pv, *npv;
sys/arch/sparc/sparc/pmap.c
2874
for (pv = pv0; pv != NULL; pv = pv->pv_next) {
sys/arch/sparc/sparc/pmap.c
2875
if ((pv->pv_flags & PV_NC) != 0) {
sys/arch/sparc/sparc/pmap.c
2883
va, pv->pv_va);
sys/arch/sparc/sparc/pmap.c
2886
if (BADALIAS(va, pv->pv_va)) {
sys/arch/sparc/sparc/pmap.c
2890
va, pv->pv_va, pg);
sys/arch/sparc/sparc/pmap.c
2921
struct pvlist *pv;
sys/arch/sparc/sparc/pmap.c
2927
for (pv = VM_MDPAGE_PVHEAD(pg); pv != NULL; pv = pv->pv_next)
sys/arch/sparc/sparc/pmap.c
2928
pv->pv_flags |= PV_NC;
sys/arch/sparc/sparc/pmap.c
2950
struct pvlist *pv;
sys/arch/sparc/sparc/pmap.c
2954
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
2958
if ((pm = pv->pv_pmap) != NULL) {
sys/arch/sparc/sparc/pmap.c
2963
cache_flush_page(pv->pv_va, pm->pm_ctxnum);
sys/arch/sparc/sparc/pmap.c
2965
pv = pv->pv_next;
sys/arch/sparc/sparc/pmap.c
2966
if (pv == NULL)
sys/arch/sparc/sparc/pmap.c
2968
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
2980
struct pvlist *pv;
sys/arch/sparc/sparc/pmap.c
2984
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
2987
if ((pm = pv->pv_pmap) != NULL) {
sys/arch/sparc/sparc/pmap.c
2990
cache_flush_page(pv->pv_va, pm->pm_ctxnum);
sys/arch/sparc/sparc/pmap.c
2992
pv = pv->pv_next;
sys/arch/sparc/sparc/pmap.c
2993
if (pv == NULL)
sys/arch/sparc/sparc/pmap.c
2995
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
5042
struct pvlist *pv, *npv;
sys/arch/sparc/sparc/pmap.c
5077
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
5078
if (pv->pv_pmap == NULL) {
sys/arch/sparc/sparc/pmap.c
5085
flags = pv->pv_flags & ~(PV_NC|PV_ANC);
sys/arch/sparc/sparc/pmap.c
5087
while (pv != NULL) {
sys/arch/sparc/sparc/pmap.c
5088
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
5089
va = pv->pv_va;
sys/arch/sparc/sparc/pmap.c
5142
npv = pv->pv_next;
sys/arch/sparc/sparc/pmap.c
5143
if (pv != VM_MDPAGE_PVHEAD(pg))
sys/arch/sparc/sparc/pmap.c
5144
pool_put(&pv_pool, pv);
sys/arch/sparc/sparc/pmap.c
5145
pv = npv;
sys/arch/sparc/sparc/pmap.c
5351
struct pvlist *pv, *npv;
sys/arch/sparc/sparc/pmap.c
5379
pv = VM_MDPAGE_PVHEAD(pg);
sys/arch/sparc/sparc/pmap.c
5380
if (pv->pv_pmap == NULL)
sys/arch/sparc/sparc/pmap.c
5384
flags = pv->pv_flags & ~(PV_NC|PV_ANC);
sys/arch/sparc/sparc/pmap.c
5385
while (pv != NULL) {
sys/arch/sparc/sparc/pmap.c
5386
pm = pv->pv_pmap;
sys/arch/sparc/sparc/pmap.c
5387
va = pv->pv_va;
sys/arch/sparc/sparc/pmap.c
5430
npv = pv->pv_next;
sys/arch/sparc/sparc/pmap.c
5431
if (pv != VM_MDPAGE_PVHEAD(pg))
sys/arch/sparc/sparc/pmap.c
5432
pool_put(&pv_pool, pv);
sys/arch/sparc/sparc/pmap.c
5433
pv = npv;
sys/arch/sparc64/sparc64/pmap.c
128
#define PV_MATCH(pv,va) (!(((pv)->pv_va ^ (va)) & PV_VAMASK))
sys/arch/sparc64/sparc64/pmap.c
129
#define PV_SETVA(pv,va) ((pv)->pv_va = (((va) & PV_VAMASK) | \
sys/arch/sparc64/sparc64/pmap.c
130
(((pv)->pv_va) & PV_MASK)))
sys/arch/sparc64/sparc64/pmap.c
2077
pv_entry_t pv, freepv = NULL;
sys/arch/sparc64/sparc64/pmap.c
2116
pv = pmap_remove_pv(pm, va, pg);
sys/arch/sparc64/sparc64/pmap.c
2117
if (pv != NULL) {
sys/arch/sparc64/sparc64/pmap.c
2119
pv->pv_next = freepv;
sys/arch/sparc64/sparc64/pmap.c
2120
freepv = pv;
sys/arch/sparc64/sparc64/pmap.c
2167
for (; freepv != NULL; freepv = pv) {
sys/arch/sparc64/sparc64/pmap.c
2168
pv = freepv->pv_next;
sys/arch/sparc64/sparc64/pmap.c
2182
pv_entry_t pv;
sys/arch/sparc64/sparc64/pmap.c
2228
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2230
pv->pv_va |= PV_REF;
sys/arch/sparc64/sparc64/pmap.c
2232
pv->pv_va |= PV_MOD;
sys/arch/sparc64/sparc64/pmap.c
2564
pv_entry_t pv;
sys/arch/sparc64/sparc64/pmap.c
2576
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2578
if (pv->pv_va & PV_MOD)
sys/arch/sparc64/sparc64/pmap.c
2579
pv->pv_va |= PV_WE; /* Remember this was modified */
sys/arch/sparc64/sparc64/pmap.c
2581
if (pv->pv_va & PV_MOD) {
sys/arch/sparc64/sparc64/pmap.c
2583
pv->pv_va &= ~PV_MOD;
sys/arch/sparc64/sparc64/pmap.c
2586
if (pv->pv_next && !pv->pv_pmap) {
sys/arch/sparc64/sparc64/pmap.c
2587
printf("pmap_clear_modify: npv but no pmap for pv %p\n", pv);
sys/arch/sparc64/sparc64/pmap.c
2591
if (pv->pv_pmap != NULL) {
sys/arch/sparc64/sparc64/pmap.c
2592
for (; pv; pv = pv->pv_next) {
sys/arch/sparc64/sparc64/pmap.c
2594
struct pmap *pmap = pv->pv_pmap;
sys/arch/sparc64/sparc64/pmap.c
2595
vaddr_t va = pv->pv_va & PV_VAMASK;
sys/arch/sparc64/sparc64/pmap.c
2618
if (pv->pv_va & PV_MOD) {
sys/arch/sparc64/sparc64/pmap.c
2620
pv->pv_va &= ~PV_MOD;
sys/arch/sparc64/sparc64/pmap.c
2642
pv_entry_t pv;
sys/arch/sparc64/sparc64/pmap.c
2655
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2656
if (pv->pv_va & PV_REF) {
sys/arch/sparc64/sparc64/pmap.c
2658
pv->pv_va &= ~PV_REF;
sys/arch/sparc64/sparc64/pmap.c
2661
if (pv->pv_next && !pv->pv_pmap) {
sys/arch/sparc64/sparc64/pmap.c
2662
printf("pmap_clear_reference: npv but no pmap for pv %p\n", pv);
sys/arch/sparc64/sparc64/pmap.c
2666
if (pv->pv_pmap != NULL) {
sys/arch/sparc64/sparc64/pmap.c
2667
for (; pv; pv = pv->pv_next) {
sys/arch/sparc64/sparc64/pmap.c
2669
struct pmap *pmap = pv->pv_pmap;
sys/arch/sparc64/sparc64/pmap.c
2670
vaddr_t va = pv->pv_va & PV_VAMASK;
sys/arch/sparc64/sparc64/pmap.c
2698
if (pv->pv_va & PV_REF) {
sys/arch/sparc64/sparc64/pmap.c
2700
pv->pv_va &= ~PV_REF;
sys/arch/sparc64/sparc64/pmap.c
2708
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2710
"(pmap = %p, ctx = %d)\n", pg, pv->pv_pmap,
sys/arch/sparc64/sparc64/pmap.c
2711
pv->pv_pmap ? pmap_ctx(pv->pv_pmap) : 0);
sys/arch/sparc64/sparc64/pmap.c
2734
pv_entry_t pv, npv;
sys/arch/sparc64/sparc64/pmap.c
2738
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2739
if (pv->pv_va & PV_MOD)
sys/arch/sparc64/sparc64/pmap.c
2743
if (pv->pv_next && !pv->pv_pmap) {
sys/arch/sparc64/sparc64/pmap.c
2744
printf("pmap_is_modified: npv but no pmap for pv %p\n", pv);
sys/arch/sparc64/sparc64/pmap.c
2748
if (!res && pv->pv_pmap != NULL) {
sys/arch/sparc64/sparc64/pmap.c
2750
for (npv = pv; !res && npv && npv->pv_pmap;
sys/arch/sparc64/sparc64/pmap.c
2767
pv->pv_va |= PV_MOD;
sys/arch/sparc64/sparc64/pmap.c
2770
pv->pv_va |= PV_WE;
sys/arch/sparc64/sparc64/pmap.c
2789
pv_entry_t pv, npv;
sys/arch/sparc64/sparc64/pmap.c
2795
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2796
if (pv->pv_va & PV_REF)
sys/arch/sparc64/sparc64/pmap.c
2801
if (pv->pv_next && !pv->pv_pmap) {
sys/arch/sparc64/sparc64/pmap.c
2802
printf("pmap_is_referenced: npv but no pmap for pv %p\n", pv);
sys/arch/sparc64/sparc64/pmap.c
2806
if (pv->pv_pmap == NULL)
sys/arch/sparc64/sparc64/pmap.c
2809
for (npv = pv; npv; npv = npv->pv_next) {
sys/arch/sparc64/sparc64/pmap.c
2825
pv->pv_va |= PV_REF;
sys/arch/sparc64/sparc64/pmap.c
2838
pv_entry_t pv;
sys/arch/sparc64/sparc64/pmap.c
2842
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2843
if (pv->pv_va & PV_REF)
sys/arch/sparc64/sparc64/pmap.c
2848
if (pv->pv_next && !pv->pv_pmap) {
sys/arch/sparc64/sparc64/pmap.c
2849
printf("pmap_is_referenced: npv but no pmap for pv %p\n", pv);
sys/arch/sparc64/sparc64/pmap.c
2853
if (pv->pv_pmap != NULL) {
sys/arch/sparc64/sparc64/pmap.c
2916
pv_entry_t pv, npv, freepv = NULL;
sys/arch/sparc64/sparc64/pmap.c
2925
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
2939
if (pv->pv_next && !pv->pv_pmap) {
sys/arch/sparc64/sparc64/pmap.c
2940
printf("pmap_page_protect: no pmap for pv %p\n", pv);
sys/arch/sparc64/sparc64/pmap.c
2944
if (pv->pv_pmap != NULL) {
sys/arch/sparc64/sparc64/pmap.c
2945
for (; pv; pv = pv->pv_next) {
sys/arch/sparc64/sparc64/pmap.c
2946
pmap = pv->pv_pmap;
sys/arch/sparc64/sparc64/pmap.c
2947
va = pv->pv_va & PV_VAMASK;
sys/arch/sparc64/sparc64/pmap.c
2952
(void *)(u_long)pv->pv_va, pg));
sys/arch/sparc64/sparc64/pmap.c
2958
pv->pv_va |= PV_REF;
sys/arch/sparc64/sparc64/pmap.c
2960
pv->pv_va |= PV_MOD;
sys/arch/sparc64/sparc64/pmap.c
2982
for (npv = pv->pv_next; npv; npv = pv->pv_next) {
sys/arch/sparc64/sparc64/pmap.c
2998
pv->pv_va |= PV_REF;
sys/arch/sparc64/sparc64/pmap.c
3000
pv->pv_va |= PV_MOD;
sys/arch/sparc64/sparc64/pmap.c
3016
pv->pv_next = npv->pv_next;
sys/arch/sparc64/sparc64/pmap.c
3023
if (pv->pv_next && !pv->pv_pmap) {
sys/arch/sparc64/sparc64/pmap.c
3024
printf("pmap_page_protect: no pmap for pv %p\n", pv);
sys/arch/sparc64/sparc64/pmap.c
3028
if (pv->pv_pmap != NULL) {
sys/arch/sparc64/sparc64/pmap.c
3029
pmap = pv->pv_pmap;
sys/arch/sparc64/sparc64/pmap.c
3030
va = pv->pv_va & PV_VAMASK;
sys/arch/sparc64/sparc64/pmap.c
3041
pv->pv_va |= PV_REF;
sys/arch/sparc64/sparc64/pmap.c
3043
pv->pv_va |= PV_MOD;
sys/arch/sparc64/sparc64/pmap.c
3056
npv = pv->pv_next;
sys/arch/sparc64/sparc64/pmap.c
3060
pv->pv_pmap = npv->pv_pmap;
sys/arch/sparc64/sparc64/pmap.c
3061
pv->pv_va = (pv->pv_va & PV_MASK) | npv->pv_va;
sys/arch/sparc64/sparc64/pmap.c
3062
pv->pv_next = npv->pv_next;
sys/arch/sparc64/sparc64/pmap.c
3066
pv->pv_pmap = NULL;
sys/arch/sparc64/sparc64/pmap.c
3067
pv->pv_next = NULL;
sys/arch/sparc64/sparc64/pmap.c
3348
pv_entry_t pvh, npv, pv;
sys/arch/sparc64/sparc64/pmap.c
3382
for (pv = pvh, npv = pvh->pv_next; npv;
sys/arch/sparc64/sparc64/pmap.c
3383
pv = npv, npv = npv->pv_next) {
sys/arch/sparc64/sparc64/pmap.c
3388
pv->pv_next = npv->pv_next;
sys/arch/sparc64/sparc64/pmap.c
3402
for (pv = pvh; pv; pv = pv->pv_next) {
sys/arch/sparc64/sparc64/pmap.c
3403
if ((pv->pv_va ^ pvh->pv_va) & VA_ALIAS_MASK) {
sys/arch/sparc64/sparc64/pmap.c
3425
pv_entry_t pv;
sys/arch/sparc64/sparc64/pmap.c
3443
pv = &md->mdpg_pvh;
sys/arch/sparc64/sparc64/pmap.c
3444
while (pv) {
sys/arch/sparc64/sparc64/pmap.c
3445
va = pv->pv_va & PV_VAMASK;
sys/arch/sparc64/sparc64/pmap.c
3446
if (pv->pv_va & PV_NC) {
sys/arch/sparc64/sparc64/pmap.c
3450
data = pseg_get(pv->pv_pmap, va);
sys/arch/sparc64/sparc64/pmap.c
3452
rv = pseg_set(pv->pv_pmap, va,
sys/arch/sparc64/sparc64/pmap.c
3457
} else if (mode && (!(pv->pv_va & PV_NVC))) {
sys/arch/sparc64/sparc64/pmap.c
3461
data = pseg_get(pv->pv_pmap, va);
sys/arch/sparc64/sparc64/pmap.c
3463
rv = pseg_set(pv->pv_pmap, va, data | TLB_CV, 0);
sys/arch/sparc64/sparc64/pmap.c
3471
data = pseg_get(pv->pv_pmap, va);
sys/arch/sparc64/sparc64/pmap.c
3473
rv = pseg_set(pv->pv_pmap, va, data & ~TLB_CV, 0);
sys/arch/sparc64/sparc64/pmap.c
3478
if (pmap_is_on_mmu(pv->pv_pmap)) {
sys/arch/sparc64/sparc64/pmap.c
3480
KASSERT(pmap_ctx(pv->pv_pmap)>=0);
sys/arch/sparc64/sparc64/pmap.c
3481
tsb_invalidate(va, pv->pv_pmap);
sys/arch/sparc64/sparc64/pmap.c
3482
tlb_flush_pte(va, pv->pv_pmap);
sys/arch/sparc64/sparc64/pmap.c
3484
pv = pv->pv_next;
sys/arch/sparc64/sparc64/pmap.c
3537
struct pv_entry *pv;
sys/arch/sparc64/sparc64/pmap.c
3550
for (pv = &md->mdpg_pvh; pv; pv = pv->pv_next)
sys/arch/sparc64/sparc64/pmap.c
3552
pv, pv->pv_next, pv->pv_pmap,
sys/arch/sparc64/sparc64/pmap.c
3553
(unsigned long long)pv->pv_va);
sys/arch/sun2/sun2/pmap.c
1027
pv_entry_t pv;
sys/arch/sun2/sun2/pmap.c
1066
for (pv = pv_free_list; (char *)pv < p; pv++)
sys/arch/sun2/sun2/pmap.c
1067
pv->pv_next = &pv[1];
sys/arch/sun2/sun2/pmap.c
1068
pv[-1].pv_next = 0;
sys/arch/sun2/sun2/pmap.c
1080
pv_entry_t *head, pv;
sys/arch/sun2/sun2/pmap.c
1104
for (pv = *head; pv != NULL; pv = pv->pv_next) {
sys/arch/sun2/sun2/pmap.c
1105
pmap = pv->pv_pmap;
sys/arch/sun2/sun2/pmap.c
1106
va = pv->pv_va;
sys/arch/sun2/sun2/pmap.c
1184
pv_syncflags(pv_entry_t pv)
sys/arch/sun2/sun2/pmap.c
1194
if (pv == NULL)
sys/arch/sun2/sun2/pmap.c
1199
for (; pv != NULL; pv = pv->pv_next) {
sys/arch/sun2/sun2/pmap.c
1200
pmap = pv->pv_pmap;
sys/arch/sun2/sun2/pmap.c
1201
va = pv->pv_va;
sys/arch/sun2/sun2/pmap.c
1280
pv_entry_t *head, pv;
sys/arch/sun2/sun2/pmap.c
1292
while ((pv = *head) != NULL) {
sys/arch/sun2/sun2/pmap.c
1293
pmap = pv->pv_pmap;
sys/arch/sun2/sun2/pmap.c
1294
va = pv->pv_va;
sys/arch/sun2/sun2/pmap.c
1298
if (pv == *head) {
sys/arch/sun2/sun2/pmap.c
1318
pv_entry_t *head, pv;
sys/arch/sun2/sun2/pmap.c
1340
for (pv = *head; pv != NULL; pv = pv->pv_next) {
sys/arch/sun2/sun2/pmap.c
1341
if ((pv->pv_pmap == pmap) && (pv->pv_va == va))
sys/arch/sun2/sun2/pmap.c
1355
for (pv = *head; pv != NULL; pv = pv->pv_next) {
sys/arch/sun2/sun2/pmap.c
1356
if (BADALIAS(va, pv->pv_va)) {
sys/arch/sun2/sun2/pmap.c
1367
pv = pv_free_list;
sys/arch/sun2/sun2/pmap.c
1368
if (pv == NULL)
sys/arch/sun2/sun2/pmap.c
1370
pv_free_list = pv->pv_next;
sys/arch/sun2/sun2/pmap.c
1371
pv->pv_next = 0;
sys/arch/sun2/sun2/pmap.c
1374
pv->pv_pmap = pmap;
sys/arch/sun2/sun2/pmap.c
1375
pv->pv_va = va;
sys/arch/sun2/sun2/pmap.c
1376
pv->pv_next = *head;
sys/arch/sun2/sun2/pmap.c
1377
*head = pv;
sys/arch/sun2/sun2/pmap.c
1396
pv_entry_t *head, *ppv, pv;
sys/arch/sun2/sun2/pmap.c
1416
pv = *ppv;
sys/arch/sun2/sun2/pmap.c
1417
while (pv) {
sys/arch/sun2/sun2/pmap.c
1418
if ((pv->pv_pmap == pmap) && (pv->pv_va == va))
sys/arch/sun2/sun2/pmap.c
1420
ppv = &pv->pv_next;
sys/arch/sun2/sun2/pmap.c
1421
pv = pv->pv_next;
sys/arch/sun2/sun2/pmap.c
1431
*ppv = pv->pv_next;
sys/arch/sun2/sun2/pmap.c
1432
pv->pv_pmap = NULL;
sys/arch/sun2/sun2/pmap.c
1433
pv->pv_va = 0;
sys/arch/sun2/sun2/pmap.c
1436
pv->pv_next = pv_free_list;
sys/arch/sun2/sun2/pmap.c
1437
pv_free_list = pv;
sys/arch/sun2/sun2/pmap.c
1438
pv = NULL;
sys/arch/sun2/sun2/pmap.c
1443
if ((pv = *head) == NULL)
sys/arch/sun2/sun2/pmap.c
1449
va = pv->pv_va;
sys/arch/sun2/sun2/pmap.c
1450
for (pv = pv->pv_next; pv != NULL; pv = pv->pv_next) {
sys/arch/sun2/sun2/pmap.c
1455
if (BADALIAS(va, pv->pv_va))
sys/arch/sun2/sun2/pmap.c
3891
pv_entry_t pv;
sys/arch/sun2/sun2/pmap.c
3902
pv = pv_head_tbl[idx];
sys/arch/sun2/sun2/pmap.c
3903
while (pv) {
sys/arch/sun2/sun2/pmap.c
3905
pv, pv->pv_pmap, pv->pv_va, pv->pv_next);
sys/arch/sun2/sun2/pmap.c
3906
pv = pv->pv_next;
sys/arch/sun3/sun3/pmap.c
1036
pv_entry_t pv;
sys/arch/sun3/sun3/pmap.c
1075
for (pv = pv_free_list; (char *)pv < p; pv++)
sys/arch/sun3/sun3/pmap.c
1076
pv->pv_next = &pv[1];
sys/arch/sun3/sun3/pmap.c
1077
pv[-1].pv_next = 0;
sys/arch/sun3/sun3/pmap.c
1089
pv_entry_t *head, pv;
sys/arch/sun3/sun3/pmap.c
1113
for (pv = *head; pv != NULL; pv = pv->pv_next) {
sys/arch/sun3/sun3/pmap.c
1114
pmap = pv->pv_pmap;
sys/arch/sun3/sun3/pmap.c
1115
va = pv->pv_va;
sys/arch/sun3/sun3/pmap.c
1191
pv_syncflags(pv_entry_t pv)
sys/arch/sun3/sun3/pmap.c
1201
if (pv == NULL)
sys/arch/sun3/sun3/pmap.c
1206
for (; pv != NULL; pv = pv->pv_next) {
sys/arch/sun3/sun3/pmap.c
1207
pmap = pv->pv_pmap;
sys/arch/sun3/sun3/pmap.c
1208
va = pv->pv_va;
sys/arch/sun3/sun3/pmap.c
1285
pv_entry_t *head, pv;
sys/arch/sun3/sun3/pmap.c
1297
while ((pv = *head) != NULL) {
sys/arch/sun3/sun3/pmap.c
1298
pmap = pv->pv_pmap;
sys/arch/sun3/sun3/pmap.c
1299
va = pv->pv_va;
sys/arch/sun3/sun3/pmap.c
1303
if (pv == *head) {
sys/arch/sun3/sun3/pmap.c
1323
pv_entry_t *head, pv;
sys/arch/sun3/sun3/pmap.c
1346
for (pv = *head; pv != NULL; pv = pv->pv_next) {
sys/arch/sun3/sun3/pmap.c
1347
if ((pv->pv_pmap == pmap) && (pv->pv_va == va))
sys/arch/sun3/sun3/pmap.c
1360
for (pv = *head; pv != NULL; pv = pv->pv_next) {
sys/arch/sun3/sun3/pmap.c
1361
if (BADALIAS(va, pv->pv_va)) {
sys/arch/sun3/sun3/pmap.c
1372
pv = pv_free_list;
sys/arch/sun3/sun3/pmap.c
1373
if (pv == NULL)
sys/arch/sun3/sun3/pmap.c
1375
pv_free_list = pv->pv_next;
sys/arch/sun3/sun3/pmap.c
1376
pv->pv_next = 0;
sys/arch/sun3/sun3/pmap.c
1379
pv->pv_pmap = pmap;
sys/arch/sun3/sun3/pmap.c
1380
pv->pv_va = va;
sys/arch/sun3/sun3/pmap.c
1381
pv->pv_next = *head;
sys/arch/sun3/sun3/pmap.c
1382
*head = pv;
sys/arch/sun3/sun3/pmap.c
1401
pv_entry_t *head, *ppv, pv;
sys/arch/sun3/sun3/pmap.c
1421
pv = *ppv;
sys/arch/sun3/sun3/pmap.c
1422
while (pv) {
sys/arch/sun3/sun3/pmap.c
1423
if ((pv->pv_pmap == pmap) && (pv->pv_va == va))
sys/arch/sun3/sun3/pmap.c
1425
ppv = &pv->pv_next;
sys/arch/sun3/sun3/pmap.c
1426
pv = pv->pv_next;
sys/arch/sun3/sun3/pmap.c
1436
*ppv = pv->pv_next;
sys/arch/sun3/sun3/pmap.c
1437
pv->pv_pmap = NULL;
sys/arch/sun3/sun3/pmap.c
1438
pv->pv_va = 0;
sys/arch/sun3/sun3/pmap.c
1441
pv->pv_next = pv_free_list;
sys/arch/sun3/sun3/pmap.c
1442
pv_free_list = pv;
sys/arch/sun3/sun3/pmap.c
1443
pv = NULL;
sys/arch/sun3/sun3/pmap.c
1448
if ((pv = *head) == NULL)
sys/arch/sun3/sun3/pmap.c
1454
va = pv->pv_va;
sys/arch/sun3/sun3/pmap.c
1455
for (pv = pv->pv_next; pv != NULL; pv = pv->pv_next) {
sys/arch/sun3/sun3/pmap.c
1460
if (BADALIAS(va, pv->pv_va))
sys/arch/sun3/sun3/pmap.c
3807
pv_entry_t pv;
sys/arch/sun3/sun3/pmap.c
3818
pv = pv_head_tbl[idx];
sys/arch/sun3/sun3/pmap.c
3819
while (pv) {
sys/arch/sun3/sun3/pmap.c
3821
pv, pv->pv_pmap, pv->pv_va, pv->pv_next);
sys/arch/sun3/sun3/pmap.c
3822
pv = pv->pv_next;
sys/arch/sun3/sun3x/pmap.c
1527
pv_t *pv;
sys/arch/sun3/sun3x/pmap.c
1531
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
1544
pv_idx = pv->pv_idx; /* Index of first PTE in PV list */
sys/arch/sun3/sun3x/pmap.c
1546
pv->pv_idx = pvebase[targ_idx].pve_next;
sys/arch/sun3/sun3x/pmap.c
1582
pv->pv_flags |= (u_short) pte->attr.raw;
sys/arch/sun3/sun3x/pmap.c
1660
pv_t *pv; /* pv list head */
sys/arch/sun3/sun3x/pmap.c
2020
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
2023
pvebase[nidx].pve_next = pv->pv_idx;
sys/arch/sun3/sun3x/pmap.c
2024
pv->pv_idx = nidx;
sys/arch/sun3/sun3x/pmap.c
2066
pv_t *pv;
sys/arch/sun3/sun3x/pmap.c
2128
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
2129
pvebase[pte_idx].pve_next = pv->pv_idx;
sys/arch/sun3/sun3x/pmap.c
2130
pv->pv_idx = pte_idx;
sys/arch/sun3/sun3x/pmap.c
2638
pv_t *pv;
sys/arch/sun3/sun3x/pmap.c
2646
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
2647
if (pv->pv_flags & PV_FLAGS_USED)
sys/arch/sun3/sun3x/pmap.c
2655
for (idx = pv->pv_idx; idx != PVE_EOL; idx = pvebase[idx].pve_next) {
sys/arch/sun3/sun3x/pmap.c
2672
pv_t *pv;
sys/arch/sun3/sun3x/pmap.c
2676
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
2677
if (pv->pv_flags & PV_FLAGS_MDFY)
sys/arch/sun3/sun3x/pmap.c
2680
for (idx = pv->pv_idx;
sys/arch/sun3/sun3x/pmap.c
2701
pv_t *pv;
sys/arch/sun3/sun3x/pmap.c
2709
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
2711
for (idx = pv->pv_idx; idx != PVE_EOL; idx = pvebase[idx].pve_next) {
sys/arch/sun3/sun3x/pmap.c
2731
pv->pv_flags |= pte->attr.raw;
sys/arch/sun3/sun3x/pmap.c
2770
pv->pv_idx = PVE_EOL;
sys/arch/sun3/sun3x/pmap.c
2868
pv_t *pv;
sys/arch/sun3/sun3x/pmap.c
2875
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
2876
pv->pv_flags &= ~(flag);
sys/arch/sun3/sun3x/pmap.c
2877
for (idx = pv->pv_idx; idx != PVE_EOL; idx = pvebase[idx].pve_next) {
sys/arch/sun3/sun3x/pmap.c
3767
pv_t *pv;
sys/arch/sun3/sun3x/pmap.c
3771
pv = pa2pv(pa);
sys/arch/sun3/sun3x/pmap.c
3772
idx = pv->pv_idx;
sys/arch/usermode/usermode/pmap.c
1006
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
1017
pv = pmap_lookup_pv(pmap, lpn);
sys/arch/usermode/usermode/pmap.c
1018
if (pv != NULL) {
sys/arch/usermode/usermode/pmap.c
1020
pmap_page_deactivate(pv);
sys/arch/usermode/usermode/pmap.c
1025
if (pv->pv_vflags & PV_WIRED)
sys/arch/usermode/usermode/pmap.c
1027
pv_release(pmap, pv->pv_ppn, lpn);
sys/arch/usermode/usermode/pmap.c
1059
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
1080
pv = pmap_lookup_pv(pmap, lpn);
sys/arch/usermode/usermode/pmap.c
1081
if (pv != NULL) {
sys/arch/usermode/usermode/pmap.c
1082
pv->pv_prot &= prot;
sys/arch/usermode/usermode/pmap.c
1083
pv_update(pv);
sys/arch/usermode/usermode/pmap.c
1084
if (pv->pv_pmap->pm_flags & PM_ACTIVE)
sys/arch/usermode/usermode/pmap.c
1085
pmap_page_activate(pv);
sys/arch/usermode/usermode/pmap.c
1094
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
1102
pv = pmap_lookup_pv(pmap, lpn);
sys/arch/usermode/usermode/pmap.c
1103
if (pv == NULL)
sys/arch/usermode/usermode/pmap.c
1106
if ((pv->pv_vflags & PV_WIRED) == 0)
sys/arch/usermode/usermode/pmap.c
1109
pv->pv_vflags &= ~PV_WIRED;
sys/arch/usermode/usermode/pmap.c
1112
pmap_update_page(pv->pv_ppn);
sys/arch/usermode/usermode/pmap.c
1118
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
112
static void pmap_page_activate(struct pv_entry *pv);
sys/arch/usermode/usermode/pmap.c
113
static void pmap_page_deactivate(struct pv_entry *pv);
sys/arch/usermode/usermode/pmap.c
1131
pv = pmap_lookup_pv(pmap, lpn);
sys/arch/usermode/usermode/pmap.c
1133
if (pv == NULL)
sys/arch/usermode/usermode/pmap.c
1136
*ppa = ptoa(pv->pv_ppn);
sys/arch/usermode/usermode/pmap.c
114
static void pv_update(struct pv_entry *pv);
sys/arch/usermode/usermode/pmap.c
1194
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
120
static void pv_free(struct pv_entry *pv);
sys/arch/usermode/usermode/pmap.c
1216
pv = l2tbl->pm_l2[l2];
sys/arch/usermode/usermode/pmap.c
1217
if (pv) {
sys/arch/usermode/usermode/pmap.c
1218
pmap_page_deactivate(pv);
sys/arch/usermode/usermode/pmap.c
1290
struct pv_entry *pv, *npv;
sys/arch/usermode/usermode/pmap.c
1297
npv = pv = &pv_table[ppn];
sys/arch/usermode/usermode/pmap.c
1298
while ((pv != NULL) && (pv->pv_pmap != NULL)) {
sys/arch/usermode/usermode/pmap.c
1300
if (pv->pv_vflags & PV_UNMANAGED) {
sys/arch/usermode/usermode/pmap.c
1301
pv = pv->pv_next;
sys/arch/usermode/usermode/pmap.c
1306
if (pv->pv_pmap->pm_flags & PM_ACTIVE)
sys/arch/usermode/usermode/pmap.c
1307
pmap_page_deactivate(pv);
sys/arch/usermode/usermode/pmap.c
1310
if (pv != &pv_table[ppn])
sys/arch/usermode/usermode/pmap.c
1311
npv = pv->pv_next;
sys/arch/usermode/usermode/pmap.c
1314
pmap_set_pv(pv->pv_pmap, pv->pv_lpn, NULL);
sys/arch/usermode/usermode/pmap.c
1315
if (pv->pv_vflags & PV_WIRED)
sys/arch/usermode/usermode/pmap.c
1316
pv->pv_pmap->pm_stats.wired_count--;
sys/arch/usermode/usermode/pmap.c
1317
pv_release(pv->pv_pmap, ppn, pv->pv_lpn);
sys/arch/usermode/usermode/pmap.c
1319
pv = npv;
sys/arch/usermode/usermode/pmap.c
1323
for (pv = &pv_table[ppn]; pv != NULL; pv = pv->pv_next) {
sys/arch/usermode/usermode/pmap.c
1325
if ((pv->pv_pmap != NULL) &&
sys/arch/usermode/usermode/pmap.c
1326
((pv->pv_vflags & PV_UNMANAGED) == 0)) {
sys/arch/usermode/usermode/pmap.c
1327
pv->pv_prot &= prot;
sys/arch/usermode/usermode/pmap.c
1328
pv_update(pv);
sys/arch/usermode/usermode/pmap.c
1330
if (pv->pv_pmap->pm_flags & PM_ACTIVE)
sys/arch/usermode/usermode/pmap.c
1331
pmap_page_activate(pv);
sys/arch/usermode/usermode/pmap.c
1340
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
1352
for (pv = &pv_table[ppn]; pv != NULL; pv = pv->pv_next)
sys/arch/usermode/usermode/pmap.c
1353
if (pv->pv_pmap == pmap_kernel() &&
sys/arch/usermode/usermode/pmap.c
1354
(pv->pv_prot & VM_PROT_WRITE))
sys/arch/usermode/usermode/pmap.c
585
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
588
pv = pool_get(&pmap_pventry_pool, PR_WAITOK);
sys/arch/usermode/usermode/pmap.c
589
memset(pv, 0, sizeof(struct pv_entry));
sys/arch/usermode/usermode/pmap.c
591
return pv;
sys/arch/usermode/usermode/pmap.c
595
pv_free(struct pv_entry *pv)
sys/arch/usermode/usermode/pmap.c
598
pool_put(&pmap_pventry_pool, pv);
sys/arch/usermode/usermode/pmap.c
604
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
607
pv = &pv_table[ppn];
sys/arch/usermode/usermode/pmap.c
608
if (pv->pv_pmap == NULL) {
sys/arch/usermode/usermode/pmap.c
610
return pv;
sys/arch/usermode/usermode/pmap.c
613
for (pv = pv; pv != NULL; pv = pv->pv_next) {
sys/arch/usermode/usermode/pmap.c
614
if ((pv->pv_pmap == pmap) && (pv->pv_lpn == lpn)) {
sys/arch/usermode/usermode/pmap.c
615
return pv;
sys/arch/usermode/usermode/pmap.c
625
pv = pv_alloc();
sys/arch/usermode/usermode/pmap.c
626
if (pv == NULL)
sys/arch/usermode/usermode/pmap.c
629
pv->pv_next = pv_table[ppn].pv_next;
sys/arch/usermode/usermode/pmap.c
630
pv_table[ppn].pv_next = pv;
sys/arch/usermode/usermode/pmap.c
633
return pv;
sys/arch/usermode/usermode/pmap.c
637
pmap_set_pv(pmap_t pmap, uintptr_t lpn, struct pv_entry *pv)
sys/arch/usermode/usermode/pmap.c
654
l2tbl->pm_l2[l2] = pv;
sys/arch/usermode/usermode/pmap.c
680
struct pv_entry *pv, *ppv;
sys/arch/usermode/usermode/pmap.c
688
pv = pmap_lookup_pv(pmap, lpn);
sys/arch/usermode/usermode/pmap.c
691
if (pv == NULL) {
sys/arch/usermode/usermode/pmap.c
699
ppn = pv->pv_ppn;
sys/arch/usermode/usermode/pmap.c
707
pmap_page_activate(pv);
sys/arch/usermode/usermode/pmap.c
712
if (tlb[pv->pv_lpn] == NULL) {
sys/arch/usermode/usermode/pmap.c
713
if (pv->pv_mmap_ppl != THUNK_PROT_NONE) {
sys/arch/usermode/usermode/pmap.c
715
__func__, pv->pv_lpn);
sys/arch/usermode/usermode/pmap.c
716
pmap_page_activate(pv);
sys/arch/usermode/usermode/pmap.c
722
prot = pv->pv_prot;
sys/arch/usermode/usermode/pmap.c
724
if (pv->pv_mmap_ppl & THUNK_PROT_READ)
sys/arch/usermode/usermode/pmap.c
726
if (pv->pv_mmap_ppl & THUNK_PROT_WRITE)
sys/arch/usermode/usermode/pmap.c
728
if (pv->pv_mmap_ppl & THUNK_PROT_EXEC)
sys/arch/usermode/usermode/pmap.c
782
pmap_page_activate(struct pv_entry *pv)
sys/arch/usermode/usermode/pmap.c
784
paddr_t pa = pv->pv_ppn * PAGE_SIZE;
sys/arch/usermode/usermode/pmap.c
785
vaddr_t va = pv->pv_lpn * PAGE_SIZE + VM_MIN_ADDRESS; /* L->V */
sys/arch/usermode/usermode/pmap.c
791
addr = thunk_mmap((void *) va, PAGE_SIZE, pv->pv_mmap_ppl,
sys/arch/usermode/usermode/pmap.c
794
(void *) va, (void *) pa, pv->pv_prot, pv->pv_mmap_ppl,
sys/arch/usermode/usermode/pmap.c
800
tlb[pv->pv_lpn] = NULL;
sys/arch/usermode/usermode/pmap.c
801
if (pv->pv_mmap_ppl != THUNK_PROT_NONE)
sys/arch/usermode/usermode/pmap.c
802
tlb[pv->pv_lpn] = pv;
sys/arch/usermode/usermode/pmap.c
806
pmap_page_deactivate(struct pv_entry *pv)
sys/arch/usermode/usermode/pmap.c
808
paddr_t pa = pv->pv_ppn * PAGE_SIZE;
sys/arch/usermode/usermode/pmap.c
809
vaddr_t va = pv->pv_lpn * PAGE_SIZE + VM_MIN_ADDRESS; /* L->V */
sys/arch/usermode/usermode/pmap.c
814
if (!tlb[pv->pv_lpn])
sys/arch/usermode/usermode/pmap.c
817
if (tlb[pv->pv_lpn]->pv_mmap_ppl == THUNK_PROT_NONE)
sys/arch/usermode/usermode/pmap.c
824
(void *) va, (void *) pa, pv->pv_mmap_ppl, (void *) addr);
sys/arch/usermode/usermode/pmap.c
829
tlb[pv->pv_lpn] = NULL;
sys/arch/usermode/usermode/pmap.c
833
pv_update(struct pv_entry *pv)
sys/arch/usermode/usermode/pmap.c
839
pflags = pv_table[pv->pv_ppn].pv_pflags;
sys/arch/usermode/usermode/pmap.c
840
vflags = pv_table[pv->pv_ppn].pv_vflags;
sys/arch/usermode/usermode/pmap.c
847
if ((pv->pv_prot & VM_PROT_WRITE) &&
sys/arch/usermode/usermode/pmap.c
850
} else if ((pv->pv_prot & (VM_PROT_READ | VM_PROT_EXECUTE)) &&
sys/arch/usermode/usermode/pmap.c
853
if (pv->pv_prot & VM_PROT_EXECUTE)
sys/arch/usermode/usermode/pmap.c
863
pv->pv_mmap_ppl = mmap_ppl;
sys/arch/usermode/usermode/pmap.c
870
struct pv_entry *pv;
sys/arch/usermode/usermode/pmap.c
872
for (pv = &pv_table[ppn]; pv != NULL; pv = pv->pv_next) {
sys/arch/usermode/usermode/pmap.c
874
ppn, pv->pv_pmap);
sys/arch/usermode/usermode/pmap.c
875
if (pv->pv_pmap != NULL) {
sys/arch/usermode/usermode/pmap.c
876
pv_update(pv);
sys/arch/usermode/usermode/pmap.c
877
if (pv->pv_pmap->pm_flags & PM_ACTIVE)
sys/arch/usermode/usermode/pmap.c
878
pmap_page_activate(pv);
sys/arch/usermode/usermode/pmap.c
880
pmap_page_deactivate(pv)
sys/arch/usermode/usermode/pmap.c
889
struct pv_entry *pv, *ppv;
sys/arch/usermode/usermode/pmap.c
905
pv = pmap_lookup_pv(pmap, lpn);
sys/arch/usermode/usermode/pmap.c
906
if (pv && pv->pv_ppn != ppn)
sys/arch/usermode/usermode/pmap.c
911
pv = pv_get(pmap, ppn, lpn); /* get our (copy) of pv entry */
sys/arch/usermode/usermode/pmap.c
914
if (pv == NULL)
sys/arch/usermode/usermode/pmap.c
916
if (pv->pv_vflags & PV_WIRED)
sys/arch/usermode/usermode/pmap.c
920
pv->pv_pmap = pmap;
sys/arch/usermode/usermode/pmap.c
921
pv->pv_ppn = ppn;
sys/arch/usermode/usermode/pmap.c
922
pv->pv_lpn = lpn;
sys/arch/usermode/usermode/pmap.c
923
pv->pv_prot = prot;
sys/arch/usermode/usermode/pmap.c
924
pv->pv_vflags = 0;
sys/arch/usermode/usermode/pmap.c
927
pv->pv_vflags |= PV_WIRED;
sys/arch/usermode/usermode/pmap.c
931
pv->pv_vflags |= PV_UNMANAGED;
sys/arch/usermode/usermode/pmap.c
941
pmap_set_pv(pmap, lpn, pv);
sys/arch/usermode/usermode/pmap.c
944
if (pv->pv_vflags & PV_WIRED)
sys/arch/usermode/usermode/pmap.c
951
pmap_page_activate(pv);
sys/arch/usermode/usermode/pmap.c
968
struct pv_entry *pv, *npv;
sys/arch/usermode/usermode/pmap.c
971
pv = &pv_table[ppn];
sys/arch/usermode/usermode/pmap.c
978
if ((pmap == pv->pv_pmap) && (lpn == pv->pv_lpn)) {
sys/arch/usermode/usermode/pmap.c
979
npv = pv->pv_next;
sys/arch/usermode/usermode/pmap.c
982
memcpy(pv, npv, offsetof(struct pv_entry, pv_pflags));
sys/arch/usermode/usermode/pmap.c
983
pmap_set_pv(pv->pv_pmap, pv->pv_lpn, pv);
sys/arch/usermode/usermode/pmap.c
986
memset(pv, 0, offsetof(struct pv_entry, pv_pflags));
sys/arch/usermode/usermode/pmap.c
989
for (npv = pv->pv_next; npv; npv = npv->pv_next) {
sys/arch/usermode/usermode/pmap.c
992
pv = npv;
sys/arch/usermode/usermode/pmap.c
995
pv->pv_next = npv->pv_next;
sys/arch/vax/include/pmap.h
204
const struct pv_entry * const pv = pmap_pg_to_pv(pg);
sys/arch/vax/include/pmap.h
206
return (pv->pv_attr & PG_V) != 0;
sys/arch/vax/include/pmap.h
212
struct pv_entry * const pv = pmap_pg_to_pv(pg);
sys/arch/vax/include/pmap.h
214
if (pv->pv_pmap != NULL || pv->pv_next != NULL)
sys/arch/vax/include/pmap.h
215
pmap_page_protect_long(pv, prot);
sys/arch/vax/vax/pmap.c
1059
struct pv_entry *pv, *tmp;
sys/arch/vax/vax/pmap.c
1130
pv = pv_table + (p >> PGSHIFT);
sys/arch/vax/vax/pmap.c
1166
if (pv->pv_pmap == NULL) {
sys/arch/vax/vax/pmap.c
1167
pv->pv_vaddr = v;
sys/arch/vax/vax/pmap.c
1168
pv->pv_pmap = pmap;
sys/arch/vax/vax/pmap.c
1173
tmp->pv_next = pv->pv_next;
sys/arch/vax/vax/pmap.c
1174
pv->pv_next = tmp;
sys/arch/vax/vax/pmap.c
1182
pv->pv_attr |= PG_V;
sys/arch/vax/vax/pmap.c
1186
pv->pv_attr |= PG_M;
sys/arch/vax/vax/pmap.c
1378
struct pv_entry *pv;
sys/arch/vax/vax/pmap.c
1418
pv = pv_table + (pa >> PGSHIFT);
sys/arch/vax/vax/pmap.c
1419
pv->pv_attr |= PG_V; /* Referenced */
sys/arch/vax/vax/pmap.c
1421
pv->pv_attr |= PG_M;
sys/arch/vax/vax/pmap.c
1433
struct pv_entry *pv = pmap_pg_to_pv(pg);
sys/arch/vax/vax/pmap.c
1437
PMDEBUG(("pmap_clear_reference: pv_entry %p\n", pv));
sys/arch/vax/vax/pmap.c
1440
ref = ISSET(pv->pv_attr, PG_V);
sys/arch/vax/vax/pmap.c
1441
CLR(pv->pv_attr, PG_V);
sys/arch/vax/vax/pmap.c
1442
if (pv->pv_pmap != NULL) do {
sys/arch/vax/vax/pmap.c
1443
pte = vaddrtopte(pv);
sys/arch/vax/vax/pmap.c
1450
} while ((pv = pv->pv_next) != NULL);
sys/arch/vax/vax/pmap.c
1465
struct pv_entry *pv = pmap_pg_to_pv(pg);
sys/arch/vax/vax/pmap.c
1468
PMDEBUG(("pmap_is_modified: pv_entry %p ", pv));
sys/arch/vax/vax/pmap.c
1471
rv = ISSET(pv->pv_attr, PG_M);
sys/arch/vax/vax/pmap.c
1472
if (rv == false && pv->pv_pmap != NULL) do {
sys/arch/vax/vax/pmap.c
1473
const struct pte * const pte = vaddrtopte(pv);
sys/arch/vax/vax/pmap.c
1477
SET(pv->pv_attr, PG_M);
sys/arch/vax/vax/pmap.c
1480
} while ((pv = pv->pv_next) != NULL);
sys/arch/vax/vax/pmap.c
1491
struct pv_entry *pv = pmap_pg_to_pv(pg);
sys/arch/vax/vax/pmap.c
1494
PMDEBUG(("pmap_clear_modify: pv_entry %p\n", pv));
sys/arch/vax/vax/pmap.c
1497
rv = ISSET(pv->pv_attr, PG_M);
sys/arch/vax/vax/pmap.c
1498
CLR(pv->pv_attr, PG_M);
sys/arch/vax/vax/pmap.c
1499
if (pv->pv_pmap != NULL) do {
sys/arch/vax/vax/pmap.c
1500
struct pte * const pte = vaddrtopte(pv);
sys/arch/vax/vax/pmap.c
1507
} while ((pv = pv->pv_next) != NULL);
sys/arch/vax/vax/pmap.c
1518
pmap_page_protect_long(struct pv_entry *pv, vm_prot_t prot)
sys/arch/vax/vax/pmap.c
1524
PMDEBUG(("pmap_page_protect: pv %p, prot %x\n", pv, prot));
sys/arch/vax/vax/pmap.c
1531
g = (int *)vaddrtopte(pv);
sys/arch/vax/vax/pmap.c
1533
pmap_decrement_stats(pv->pv_pmap, (g[0] & PG_W) != 0);
sys/arch/vax/vax/pmap.c
1534
if ((pv->pv_attr & (PG_V|PG_M)) != (PG_V|PG_M))
sys/arch/vax/vax/pmap.c
1535
pv->pv_attr |=
sys/arch/vax/vax/pmap.c
1538
if (pv->pv_pmap != pmap_kernel()) {
sys/arch/vax/vax/pmap.c
1542
pv->pv_vaddr = NOVADDR;
sys/arch/vax/vax/pmap.c
1543
pv->pv_pmap = NULL;
sys/arch/vax/vax/pmap.c
1545
pl = pv->pv_next;
sys/arch/vax/vax/pmap.c
1546
pv->pv_pmap = 0;
sys/arch/vax/vax/pmap.c
1547
pv->pv_next = 0;
sys/arch/vax/vax/pmap.c
1551
if ((pv->pv_attr & (PG_V|PG_M)) != (PG_V|PG_M))
sys/arch/vax/vax/pmap.c
1552
pv->pv_attr |=
sys/arch/vax/vax/pmap.c
1566
pt = vaddrtopte(pv);
sys/arch/vax/vax/pmap.c
1574
} while ((pv = pv->pv_next));
sys/arch/vax/vax/pmap.c
1714
free_pventry(struct pv_entry *pv)
sys/arch/vax/vax/pmap.c
1716
pv->pv_next = pv_list;
sys/arch/vax/vax/pmap.c
1717
pv_list = pv;
sys/arch/vax/vax/pmap.c
1729
struct pv_entry *pv;
sys/arch/vax/vax/pmap.c
1732
pv = (struct pv_entry *)getpage();
sys/arch/vax/vax/pmap.c
1733
if (pv == NULL)
sys/arch/vax/vax/pmap.c
1738
pv[i].pv_next = &pv[i + 1];
sys/arch/vax/vax/pmap.c
1740
pv[count - 1].pv_next = pv_list;
sys/arch/vax/vax/pmap.c
1741
pv_list = pv;
sys/arch/vax/vax/pmap.c
517
struct pv_entry *pv, *pl, *pf;
sys/arch/vax/vax/pmap.c
532
pv = pv_table + ((br[0] & PG_FRAME) >> LTOHPS);
sys/arch/vax/vax/pmap.c
534
((pv->pv_attr & PG_M) != PG_M))
sys/arch/vax/vax/pmap.c
535
pv->pv_attr |= br[0]|br[1]|br[2]|br[3]|br[4]|br[5]|br[6]|br[7];
sys/arch/vax/vax/pmap.c
537
if (pv->pv_pmap == pm && pv->pv_vaddr == vaddr) {
sys/arch/vax/vax/pmap.c
538
pv->pv_vaddr = NOVADDR;
sys/arch/vax/vax/pmap.c
539
pv->pv_pmap = 0;
sys/arch/vax/vax/pmap.c
542
for (pl = pv; pl->pv_next; pl = pl->pv_next) {
sys/arch/vax/vax/pmap.c
971
vaddrtopte(const struct pv_entry *pv)
sys/arch/vax/vax/pmap.c
974
if (pv->pv_pmap == NULL || pv->pv_vaddr == NOVADDR)
sys/arch/vax/vax/pmap.c
976
if (pv->pv_vaddr & KERNBASE)
sys/arch/vax/vax/pmap.c
977
return &Sysmap[(pv->pv_vaddr & ~KERNBASE) >> VAX_PGSHIFT];
sys/arch/vax/vax/pmap.c
978
pm = pv->pv_pmap;
sys/arch/vax/vax/pmap.c
979
if (pv->pv_vaddr & 0x40000000)
sys/arch/vax/vax/pmap.c
980
return &pm->pm_p1br[vax_btop(pv->pv_vaddr & ~0x40000000)];
sys/arch/vax/vax/pmap.c
982
return &pm->pm_p0br[vax_btop(pv->pv_vaddr)];
sys/arch/x86/pv/pvbus.c
57
CFATTACH_DECL_NEW(pv, sizeof(struct pv_softc),
sys/dev/marvell/if_mvxpe.c
268
uint32_t pv;
sys/dev/marvell/if_mvxpe.c
277
pv = bus_space_read_4(mva->mva_iot, mva->mva_ioh, pv_off);
sys/dev/marvell/if_mvxpe.c
278
if (MVXPE_PV_GET_VERSION(pv) < 0x10)
sys/dev/pci/if_xge.c
695
xge_intr(void *pv)
sys/dev/pci/if_xge.c
697
struct xge_softc *sc = pv;
sys/uvm/pmap/pmap.c
1011
pv_entry_t pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
1012
if (pv->pv_pmap == NULL) {
sys/uvm/pmap/pmap.c
1022
for (; pv != NULL; pv = npv) {
sys/uvm/pmap/pmap.c
1023
npv = pv->pv_next;
sys/uvm/pmap/pmap.c
1025
if (PV_ISKENTER_P(pv)) {
sys/uvm/pmap/pmap.c
1027
" skip", (uintptr_t)pv, (uintptr_t)pv->pv_pmap,
sys/uvm/pmap/pmap.c
1028
pv->pv_va, 0);
sys/uvm/pmap/pmap.c
1030
KASSERT(pv->pv_pmap == pmap_kernel());
sys/uvm/pmap/pmap.c
1033
pv->pv_next = NULL;
sys/uvm/pmap/pmap.c
1046
pvp->pv_next = pv;
sys/uvm/pmap/pmap.c
1049
*fpv = *pv;
sys/uvm/pmap/pmap.c
1052
pvp = pv;
sys/uvm/pmap/pmap.c
1056
const pmap_t pmap = pv->pv_pmap;
sys/uvm/pmap/pmap.c
1057
vaddr_t va = trunc_page(pv->pv_va);
sys/uvm/pmap/pmap.c
1066
" pte %#jx", (uintptr_t)pv, (uintptr_t)pmap, va,
sys/uvm/pmap/pmap.c
1103
pmap_pv_free(pv);
sys/uvm/pmap/pmap.c
1105
pv->pv_pmap = NULL;
sys/uvm/pmap/pmap.c
1106
pv->pv_next = NULL;
sys/uvm/pmap/pmap.c
1234
pv_entry_t pv;
sys/uvm/pmap/pmap.c
1250
pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
1258
if (pv->pv_pmap != NULL) {
sys/uvm/pmap/pmap.c
1259
while (pv != NULL) {
sys/uvm/pmap/pmap.c
1261
if (PV_ISKENTER_P(pv)) {
sys/uvm/pmap/pmap.c
1262
pv = pv->pv_next;
sys/uvm/pmap/pmap.c
1266
const pmap_t pmap = pv->pv_pmap;
sys/uvm/pmap/pmap.c
1267
va = trunc_page(pv->pv_va);
sys/uvm/pmap/pmap.c
1271
KASSERT(pv->pv_pmap == pmap);
sys/uvm/pmap/pmap.c
1274
pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
1276
pv = pv->pv_next;
sys/uvm/pmap/pmap.c
1413
for (pv_entry_t pv = &mdpg->mdpg_first; pv != NULL; pv = pv->pv_next) {
sys/uvm/pmap/pmap.c
1414
pmap_t pmap = pv->pv_pmap;
sys/uvm/pmap/pmap.c
1415
vaddr_t va = trunc_page(pv->pv_va);
sys/uvm/pmap/pmap.c
1929
pv_entry_t pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
1933
if (pv->pv_pmap == NULL) {
sys/uvm/pmap/pmap.c
1941
for (; pv != NULL; pv = pv_next) {
sys/uvm/pmap/pmap.c
1942
pmap_t pmap = pv->pv_pmap;
sys/uvm/pmap/pmap.c
1943
vaddr_t va = trunc_page(pv->pv_va);
sys/uvm/pmap/pmap.c
1945
pv_next = pv->pv_next;
sys/uvm/pmap/pmap.c
1947
if (PV_ISKENTER_P(pv))
sys/uvm/pmap/pmap.c
2020
pv_entry_t pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
2021
if (pv->pv_pmap == NULL) {
sys/uvm/pmap/pmap.c
2031
for (; pv != NULL; pv = pv_next) {
sys/uvm/pmap/pmap.c
2032
pmap_t pmap = pv->pv_pmap;
sys/uvm/pmap/pmap.c
2033
vaddr_t va = trunc_page(pv->pv_va);
sys/uvm/pmap/pmap.c
2035
pv_next = pv->pv_next;
sys/uvm/pmap/pmap.c
2037
if (PV_ISKENTER_P(pv))
sys/uvm/pmap/pmap.c
2110
pv_entry_t pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
2118
if (pv->pv_pmap == NULL) {
sys/uvm/pmap/pmap.c
2173
pv_entry_t pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
2174
if (pv->pv_pmap != NULL) {
sys/uvm/pmap/pmap.c
2179
for (; pv != NULL; pv = pv->pv_next) {
sys/uvm/pmap/pmap.c
2180
KASSERT(pv->pv_pmap != pmap_kernel() || !pmap_md_direct_mapped_vaddr_p(pv->pv_va));
sys/uvm/pmap/pmap.c
2182
colors |= __BIT(atop(pv->pv_va) & colormask);
sys/uvm/pmap/pmap.c
2194
KASSERT(pv->pv_next == NULL);
sys/uvm/pmap/pmap.c
2207
pv_entry_t pv, npv, apv;
sys/uvm/pmap/pmap.c
2228
pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
2230
if (pv->pv_pmap == NULL) {
sys/uvm/pmap/pmap.c
2231
KASSERT(pv->pv_next == NULL);
sys/uvm/pmap/pmap.c
2244
if (!PMAP_PAGE_COLOROK_P(va, pv->pv_va)) {
sys/uvm/pmap/pmap.c
2248
pv->pv_pmap = pmap;
sys/uvm/pmap/pmap.c
2249
pv->pv_va = va | flags;
sys/uvm/pmap/pmap.c
2265
for (npv = pv; npv; npv = npv->pv_next) {
sys/uvm/pmap/pmap.c
2285
(uintptr_t)pv, 0, 0, 0);
sys/uvm/pmap/pmap.c
2320
while (pv->pv_pmap == kpmap && pv->pv_next != NULL) {
sys/uvm/pmap/pmap.c
2321
pv = pv->pv_next;
sys/uvm/pmap/pmap.c
2327
npv->pv_next = pv->pv_next;
sys/uvm/pmap/pmap.c
2328
pv->pv_next = npv;
sys/uvm/pmap/pmap.c
2336
UVMHIST_LOG(pmaphist, " <-- done pv=%#jx (first %ju)", (uintptr_t)pv,
sys/uvm/pmap/pmap.c
2351
pv_entry_t pv, npv;
sys/uvm/pmap/pmap.c
2361
pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
2374
if (pmap == pv->pv_pmap && va == trunc_page(pv->pv_va)) {
sys/uvm/pmap/pmap.c
2375
npv = pv->pv_next;
sys/uvm/pmap/pmap.c
2377
*pv = *npv;
sys/uvm/pmap/pmap.c
2378
KASSERT(pv->pv_pmap != NULL);
sys/uvm/pmap/pmap.c
2383
pv->pv_pmap = NULL;
sys/uvm/pmap/pmap.c
2388
for (npv = pv->pv_next; npv; pv = npv, npv = npv->pv_next) {
sys/uvm/pmap/pmap.c
2394
pv->pv_next = npv->pv_next;
sys/uvm/pmap/pmap.c
2627
pv_entry_t pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
2629
if (pv->pv_pmap == NULL) {
sys/uvm/pmap/pmap.c
2673
for (size_t i = 0; pv != NULL; pv = pv->pv_next) {
sys/uvm/pmap/pmap.c
2674
pr(" pv[%zu] pv=%p\n", i, pv);
sys/uvm/pmap/pmap.c
2675
pr(" pv[%zu].pv_pmap = %p", i, pv->pv_pmap);
sys/uvm/pmap/pmap.c
2677
i, trunc_page(pv->pv_va), PV_ISKENTER_P(pv) ? "true" : "false");
sys/uvm/pmap/pmap.c
317
#define pmap_pv_free(pv) pool_put(&pmap_pv_pool, (pv))
sys/uvm/pmap/pmap.c
462
pv_entry_t pv = &mdpg->mdpg_first;
sys/uvm/pmap/pmap.c
473
if (pv->pv_pmap != NULL) {
sys/uvm/pmap/pmap.c
474
for (; pv != NULL; pv = pv->pv_next) {
sys/uvm/pmap/pmap.c
476
(uintptr_t)pv, (uintptr_t)pv->pv_pmap, 0, 0);
sys/uvm/pmap/pmap.c
479
kcpuset_merge(onproc, pv->pv_pmap->pm_onproc);
sys/uvm/pmap/pmap.c
484
if (pv->pv_pmap == curpmap) {
sys/uvm/pmap/vmpagemd.h
66
#define PV_ISKENTER_P(pv) (((pv->pv_va) & PV_KENTER) != 0)
tests/usr.bin/xlint/lint1/gcc.c
106
static unsigned long long v, *pv;
tests/usr.bin/xlint/lint1/gcc.c
107
v = __atomic_load_n(pv, 0);
tests/usr.bin/xlint/lint1/gcc.c
108
v = __atomic_exchange_n(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
109
v = __atomic_add_fetch(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
110
v = __atomic_sub_fetch(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
111
v = __atomic_and_fetch(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
112
v = __atomic_xor_fetch(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
113
v = __atomic_or_fetch(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
114
v = __atomic_nand_fetch(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
115
v = __atomic_fetch_add(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
116
v = __atomic_fetch_sub(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
117
v = __atomic_fetch_and(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
118
v = __atomic_fetch_xor(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
119
v = __atomic_fetch_or(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
120
v = __atomic_fetch_nand(pv, 0, 0);
tests/usr.bin/xlint/lint1/gcc.c
127
c = __atomic_exchange_n(pv, 0, 0);
usr.bin/man/man.c
479
manual_find_literalfile(struct manstate *mp, char **pv)
usr.bin/man/man.c
505
if (!fnmatch(buf, *pv, 0)) {
usr.bin/man/man.c
507
build_page(p + 1, pv, mp);
usr.bin/man/man.c
518
struct manstate *mp, char **pv)
usr.bin/man/man.c
538
if (!fnmatch(buf, *pv, 0)) {
usr.bin/man/man.c
540
build_page(p + 1, pv, mp);
usr.bin/rump_dhcpclient/bpf.c
59
struct bpf_version pv;
usr.bin/rump_dhcpclient/bpf.c
81
if (rump_sys_ioctl(fd, BIOCVERSION, &pv) == -1)
usr.bin/rump_dhcpclient/bpf.c
83
if (pv.bv_major != BPF_MAJOR_VERSION ||
usr.bin/rump_dhcpclient/bpf.c
84
pv.bv_minor < BPF_MINOR_VERSION) {
usr.sbin/sysinst/partman.c
1560
if (dev_ptr->pv[i].pm == NULL) {
usr.sbin/sysinst/partman.c
1561
dev_ptr->pv[i].pm = disk_entrie.dev_ptr;
usr.sbin/sysinst/partman.c
1562
dev_ptr->pv[i].pm_part = disk_entrie.id;
usr.sbin/sysinst/partman.c
1563
strlcpy(dev_ptr->pv[i].pm_name, disk_entrie.fullname,
usr.sbin/sysinst/partman.c
1564
sizeof(dev_ptr->pv[i].pm_name));
usr.sbin/sysinst/partman.c
1583
if (dev_ptr->pv[i].pm == NULL)
usr.sbin/sysinst/partman.c
1586
.opt_name = dev_ptr->pv[i].pm_name,
usr.sbin/sysinst/partman.c
1606
dev_ptr->pv[submenu_args[retvalue].index].pm = NULL;
usr.sbin/sysinst/partman.c
1625
if (dev_ptr->pv[i].pm != NULL) {
usr.sbin/sysinst/partman.c
1626
strlcat(devs, dev_ptr->pv[i].pm_name, STRSIZE);
usr.sbin/sysinst/partman.c
1654
if (dev_ptr->pv[i].pm != NULL) {
usr.sbin/sysinst/partman.c
1656
strlcat(buf, dev_ptr->pv[i].pm_name,
usr.sbin/sysinst/partman.c
173
pv_t pv[MAX_LVM_PV];
usr.sbin/sysinst/partman.c
1772
if (dev_ptr->pv[i].pm != NULL) {
usr.sbin/sysinst/partman.c
1773
if (!dev_ptr->pv[i].pm->parts->pscheme->get_part_info(
usr.sbin/sysinst/partman.c
1774
dev_ptr->pv[i].pm->parts, dev_ptr->pv[i].pm_part,
usr.sbin/sysinst/partman.c
2004
if (lvms[i].pv[ii].pm != NULL) {
usr.sbin/sysinst/partman.c
2007
(char*)lvms[i].pv[ii].pm_name);
usr.sbin/sysinst/partman.c
2010
(char*)lvms[i].pv[ii].pm_name);
usr.sbin/sysinst/partman.c
2014
strlcat(devs, lvms[i].pv[ii].pm_name,
usr.sbin/sysinst/partman.c
2107
if (lvms[i].pv[ii].pm != NULL)
usr.sbin/sysinst/partman.c
2108
lvms[i].pv[ii].pm->blocked++;
usr.sbin/sysinst/partman.c
2270
lvms[i].pv[ii].pm == pm_cur &&
usr.sbin/sysinst/partman.c
2271
lvms[i].pv[ii].pm_part == id) {
usr.sbin/sysinst/partman.c
2273
lvms[i].pv[ii].pm = NULL;