Changeset View
Changeset View
Standalone View
Standalone View
head/sys/arm/arm/pmap-v6.c
Show First 20 Lines • Show All 3,316 Lines • ▼ Show 20 Lines | pmap_change_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t va, | ||||
if (pmap == kernel_pmap) { | if (pmap == kernel_pmap) { | ||||
struct pte1_action act; | struct pte1_action act; | ||||
sched_pin(); | sched_pin(); | ||||
act.va = va; | act.va = va; | ||||
act.npte1 = npte1; | act.npte1 = npte1; | ||||
act.update = PCPU_GET(cpuid); | act.update = PCPU_GET(cpuid); | ||||
smp_rendezvous_cpus(all_cpus, smp_no_rendevous_barrier, | smp_rendezvous_cpus(all_cpus, smp_no_rendezvous_barrier, | ||||
pmap_update_pte1_action, NULL, &act); | pmap_update_pte1_action, NULL, &act); | ||||
sched_unpin(); | sched_unpin(); | ||||
} else { | } else { | ||||
register_t cspr; | register_t cspr; | ||||
/* | /* | ||||
* Use break-before-make approach for changing userland | * Use break-before-make approach for changing userland | ||||
* mappings. It can cause L1 translation aborts on other | * mappings. It can cause L1 translation aborts on other | ||||
▲ Show 20 Lines • Show All 3,483 Lines • Show Last 20 Lines |