pmap problem in FreeBSD current - PS
Mark Tinguely
tinguely at casselton.net
Fri Jul 10 14:54:08 UTC 2009
PS. sorry to even question your cpu_(l2)idcache_wbinv_range() implemetation.
the cpu_idcache_wbinv_range() in bus_dmamem_alloc() is wrong.
arm_remap_nocache() should wb/inv the entire page especially if the
buffer that uses the page is less than a page size or non-page aligned.
The cache lines NOT in the buffer is the data that can be lost if
used while the nocache shadow mapping is in effect.
As an open question to the group: should we add an explict page
cpu_(l2)idcache_wbinv_range() in the arm_remap_nocache() routine,
so we know that it happens rather than a side effect of the new
managing of kernel pages?
For freebsd-9, I will rewrite arm_remap_nocache() to get rid of the
shadow map.
Did your lock problems go away?
Good work.
--Mark Tinguely
More information about the freebsd-arm
mailing list