Re: [patch 071/149] ARM: 6166/1: Proper prefetch abort handling on pre-ARMv6

Kirill A. Shutemov
2010-07-02T06:29:27Z

On Fri, Jul 02, 2010 at 12:12:07AM +0100, Russell King wrote:
> On Fri, Jul 02, 2010 at 01:59:11AM +0300, Kirill A. Shutemov wrote:
> > On Thu, Jul 01, 2010 at 11:48:37PM +0100, Russell King wrote:
> > > One possibility is that for some reason you're using the legacy prefetch
> > > abort code or pre-IFSR code, which will always tell the kernel that its
> > > a translation fault - and in this case, this patch would improve the
> > > situation. What kernel version are you using?
> >
> > 2.6.32
>
> Should be recent enough.
>
> > If you run this test in loop on kernel without the patch you'll finally
> > get hung instead SIGSEGV.
> >
> > It seems the patch fixes more than it was written for. :)
>
> Have you investigated the IFSR and IFAR values, and the corresponding
> page table state?

In oprofile dump, I saw do_PrefetchAbort() and do_translation_fault() at
the top, so I guess IFSR is 5. I don't known value IFAR, but I'll see.

> I'm not going to be able to run your test code for
> a few days.

It's only few minutes or less if you are lucky.

--
Kirill A. Shutemov