Performance of SheevaPlug on 8-stable

Mark Tinguely tinguely at casselton.net
Tue Mar 23 12:56:39 UTC 2010


>  From gjb at semihalf.com  Tue Mar 23 06:14:23 2010
>  X-Virus-Scanned: by amavisd-new at semihalf.com
>  Date: Tue, 23 Mar 2010 12:14:12 +0100
>  From: Grzegorz Bernacki <gjb at semihalf.com>
On Tue, 23 Mar 2010 12:14:1, Grzegorz Bernacki wrote:

>  Patch I've send is not a solution for this problem. I just send it to show
>  that excluding executable pages from fix_cache mechanism fixes the problem
>  and as I wrote in this mail, we need to handle executable pages with writable
>  kernel mapping differently.
>  I think that Mark is right. Kernel mapping should be already flushed out (we
>  can just do it again to make sure). I am not sure it there is any chance that
>  user mapping can have some cached data.
>
>  grzesiek

This pmap_fix_cache happens at (un)mapping time, if we had to, we could
modify the DMA sync code too. I am thinking on the PVF_EXEC POST_READ
sync to invalidate both the kernel and user cache.

For example, my experimental busdma_machdep.c could keep vm_page entries
for the non-bounced cache; it also could be computed with a pmap_extract.
The bounce list could add the vm_page entry or compute it simply from the PA.

--Mark.


More information about the freebsd-arm mailing list