On Tue, Apr 3, 2012 at 1:52 PM, vasanth rao naik sabavat
<vasanth.raon...@gmail.com> wrote:
> Hello Mark,
>
> I think pmap_remove_pages() is executed only for the current process.
>
>    2549 #ifdef PMAP_REMOVE_PAGES_CURPROC_ONLY
>    2550     if (pmap != vmspace_pmap(curthread->td_proc->p_vmspace)) {
>    2551         printf("warning: pmap_remove_pages called with non-current
> pmap\n");
>    2552         return;
>    2553     }
>    2554 #endif
>
> I dont still get it why this was removed?
>
> Thanks,
> Vasanth


That is pretty old code. Newer code does not make that assumption.

Without the assumption that the pages are from the current map, then you
have to use the direct physical -> virtual mapping:

2547    #ifdef PMAP_REMOVE_PAGES_CURPROC_ONLY
2548    pte = vtopte(pv->pv_va);
2549    #else
2550    pte = pmap_pte(pmap, pv->pv_va);
2551    #endif

--Mark Tinguely.
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to