Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 02 Jun 2009 09:42:20 -0700
From:      Sam Leffler <sam@freebsd.org>
To:        Mark Tinguely <tinguely@casselton.net>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: cache corruption patch
Message-ID:  <4A25566C.7020806@freebsd.org>
In-Reply-To: <200905282320.n4SNK87M043401@casselton.net>
References:  <200905282320.n4SNK87M043401@casselton.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Mark Tinguely wrote:
> There has been several occurrences of memory corruption in ARM due to caching
> issues. A couple recent examples are problems with the SATA drive and new USB
> code.
>
> This patch tracks kernel mapped pages and detects when they are shared
> with existing user mapped pages and other kernel mapped pages. This patch
> has gone through some refinement in the last couple days with feed back
> from testers and is getting ready for being committed before the FreeBSD 8.0
> freeze.
>
> This patch should allow the removal of added cache invalidation commands to
> the dma. 
>
> The patch is located at:
>
> 	http://www.casselton.net/~tinguely/arm_pmap_unmanaged.diff
>
> For those interested, I can give a long explanation of the patch.
>   

Have you measured the overhead of this additional state tracking 
(time+space)?  It appears to affect only dma buffers.

Not sure what "added cache invalidation commands" you're referring to, 
can you explain?  Perhaps you could just provide a separate patch that 
shows which bus_dma ops you think can go away.

    Sam




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A25566C.7020806>