In pmap_object_init_pt(), the pmap_invalidate_all() should be performed on
the caller-provided pmap, not the kernel_pmap. Using the kernel_pmap results in an unnecessary IPI for TLB shootdown on SMPs. Reviewed by: jake, peter
This commit is contained in:
parent
36904d59bb
commit
455ee12a27
@ -2119,7 +2119,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offset_t addr,
|
||||
ptepa += NBPDR;
|
||||
pde++;
|
||||
}
|
||||
pmap_invalidate_all(kernel_pmap);
|
||||
pmap_invalidate_all(pmap);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2264,7 +2264,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offset_t addr,
|
||||
ptepa += NBPDR;
|
||||
ptepindex += 1;
|
||||
}
|
||||
pmap_invalidate_all(kernel_pmap);
|
||||
pmap_invalidate_all(pmap);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user