RE: Latency traces I cannot interpret (sa1100, 2.6.15-rc7-rt1)

From: kus Kusche Klaus
Date: Thu Jan 05 2006 - 10:31:15 EST


> From: Daniel Walker [mailto:dwalker@xxxxxxxxxx]
> On Wed, 2006-01-04 at 10:28 +0100, kus Kusche Klaus wrote:
> > > From: Daniel Walker
> > > Ok, yet another patch. This one uses the correct lowlevel
> calls, and I
> > > fixed the call ordering.
> >
> > Hmm, I have no deep knowledge of ARM assembler programming,
> > but your patch branches to a C subroutine without setting up a
> > return address in the lr register.
> >
> > Hence, the return in trace_irqs_... jumps to god-knows-where,
> > but not back to the next instruction.
> >
> > As a wild guess, I replaced the "b trace_irqs_..." with
> > "bl trace_irqs_...".
>
> Ok .
>
> > With this change, the kernel boots fine, but the system seems to go
> > into an infinite loop as soon as the first usermode processes start.
> > Most likely, my change messes up the lr register of some surrounding
> > context.
>
> That's odd. Do you have an OOPS, or is it just a silent hang?

No Oops, just a silent hang.

But as far as I can tell, the macros are used in code parts where just
jumps, but no calls are made (e.g. syscall entry / exit sequence)
and the lr register contains data which should not be messed up by
subroutine calls.


--
Klaus Kusche (Software Development - Control Systems)
KEBA AG Gewerbepark Urfahr, A-4041 Linz, Austria (Europe)
Tel: +43 / 732 / 7090-3120 Fax: +43 / 732 / 7090-6301
E-Mail: kus@xxxxxxxx WWW: www.keba.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/