Date: Sat, 15 Dec 2012 12:48:46 -0800 From: Oleksandr Tymoshenko <gonzo@bluezbox.com> To: Ian Lepore <freebsd@damnhippie.dyndns.org> Cc: freebsd-arm@freebsd.org Subject: Re: arm cache fixes Message-ID: <8A228489-9934-4B2F-94C5-882A61116F99@bluezbox.com> In-Reply-To: <1355602847.1198.83.camel@revolution.hippie.lan> References: <1355602847.1198.83.camel@revolution.hippie.lan>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2012-12-15, at 12:20 PM, Ian Lepore <freebsd@damnhippie.dyndns.org> = wrote: > Yes, I've submitted yet another patch for an arm cache maintenance = bug.=20 >=20 > Just to be clear: it is NOT the fix for the arm v6/v7 writeback = problem. >=20 > It also doesn't apply to Marvell/Sheeva-based armv5 systems, because > they have their own SoC-specific cache maintenance routines. >=20 > It does apply to most other armv4 and v5 systems. >=20 > Speaking of the armv6/v7 bug that happens with writeback enabled... I > took a hard look at the low-level asm code for those, and nothing = jumps > out at me as wrong. But then, I've looked at the armv4 low level > routines many times before, starting in 2009 when I first started > fighting cache coherency problems, and I never noticed those incorrect > 'bpl' instructions before. (I've been doing arm asm since 1993, and = I'm > still always tripped up by the branch mnemonics used with arm.) >=20 > I've been calling it "the armv6/v7" problem, but do we know whether = it's > both of those architectures, or if it's v7-only? There's a huge > difference between the cache maintenance schemes for the two. If it > happens on both, we should probably focus on the busdma_machdep code. > If it's v7 only, maybe it's low-level code (which looks reasonable on > its face, but I need to study the ARM ARM for v7 stuff more). I performed extensive testing only on armv7 platform. Now that the = problem has been split in several sub-problems (pmap module fixes, L2 cache driver bugs, = EHCI issue) I'm going to apply pmap fixes and perform tests on my Raspberry Pi to = gather more statistics. I'll get back with more information as soon as I have it.=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8A228489-9934-4B2F-94C5-882A61116F99>