All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
To: Wayne Warren <wwarren@emacinc.com>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai] Adeos I-Pipe patch problem on vendor-specific kernel
Date: Wed, 24 Oct 2012 19:38:10 +0200	[thread overview]
Message-ID: <50882782.50003@xenomai.org> (raw)
In-Reply-To: <1351099930.25888.286.camel@ENG-09-LX.emacinc.com>

On 10/24/2012 07:32 PM, Wayne Warren wrote:
> We decided to try to continue debugging our current branch for another
> day or two.
> 
> We thought to check the link register just as execution enters
> __dabt_srv and found that the data abort exception occurs in an
> interrupt handler called from __int_svc, which is why we thought it was
> occurring on the cpsie instruction...actually, an interrupt seems to
> have occurred just as interrupts were enabled. The backtrace from the
> breakpoint in the function found using the LR value at __dabt_svc is:
> 
> (gdb) bt                                                                                                                                                     │············································································································
> #0  __ipipe_tsc_update () at /home/wayne/src/linux/linux-2.6.37-3517-xenomai/arch/arm/kernel/ipipe_tsc.c:123                                                 │············································································································
> #1  0xc0059ac0 in omap2_gp_timer_interrupt (irq=38, dev_id=0xc07e4ba0) at /home/wayne/src/linux/linux-2.6.37-3517-xenomai/arch/arm/mach-omap2/timer-gp.c:77  │············································································································
> #2  0xc00c0bb0 in handle_IRQ_event (irq=38, action=0xc0634038) at /home/wayne/src/linux/linux-2.6.37-3517-xenomai/kernel/irq/handle.c:68                     │············································································································
> #3  0xc00c3378 in handle_level_irq (irq=38, desc=0xc07a68c8) at /home/wayne/src/linux/linux-2.6.37-3517-xenomai/kernel/irq/chip.c:529                        │············································································································
> #4  0xc003f044 in asm_do_IRQ (irq=38, regs=<value optimized out>) at /home/wayne/src/linux/linux-2.6.37-3517-xenomai/include/linux/irqdesc.h:125             │············································································································
> #5  0xc00c57c8 in __ipipe_sync_stage () at /home/wayne/src/linux/linux-2.6.37-3517-xenomai/kernel/ipipe/core.c:1284                                          │············································································································
> #6  0xc005280c in __ipipe_grab_irq (irq=38, regs=0xc062df80) at /home/wayne/src/linux/linux-2.6.37-3517-xenomai/arch/arm/kernel/ipipe.c:605                  │············································································································
> #7  0xc04868f8 in __irq_svc ()                                                                                                                               │············································································································
> Backtrace stopped: frame did not save the PC       
> 
> This shows that the backtrace occurs in __ipipe_tsc_update.
> Specifically, it occurs when a "BLX" instruction is called on a register
> holding an address that points to no function in particular. I believe
> this is because the function __ipipe_tsc_get (called in
> __ipipe_tsc_update) is not defined.
> 
> CONFIG_IPIPE_ARM_KUSER_TSC is set to 'y' by default since CONFIG_OMAP is
> selected, so it seems that __ipipe_tsc_get is not mapped to
> __ipipe_mach_get_tsc by the preprocessor macro in
> arc/arm/include/asm/ipipe.h, near line 340. 
> 
> __ipipe_mach_get_tsc is something that the ArmPorting guide you linked
> me to a couple weeks ago mentions as needing to be defined, yet it
> appears because CONFIG_IPIPE_ARM_KUSER_TSC is defined, it wouldn't
> matter.
> 
> Do you have any suggestions? For now I think I will work on the
> __ipipe_mach_get_tsc function and force CONFIG_IPIPE_ARM_KUSER_TSC=n.

What you need is __ipipe_tsc_register to be called before any call to
__ipipe_tsc_update.

__ipipe_tsc_get is supposed to be defined to be something like 0xffff0f40

Or apply the following patch:
http://git.xenomai.org/?p=ipipe-gch.git;a=commitdiff;h=42dd9056983cb6f65b6a336363f2f08f4426625a;hp=3b51cebda0b0d0123cb61b6ec07ecb62f293a528
-- 
					    Gilles.


  reply	other threads:[~2012-10-24 17:38 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-02 21:08 [Xenomai] Adeos I-Pipe patch problem on vendor-specific kernel Wayne Warren
2012-10-02 21:32 ` Gilles Chanteperdrix
2012-10-02 21:35   ` Gilles Chanteperdrix
2012-10-04 16:57     ` Wayne Warren
2012-10-04 17:09       ` Gilles Chanteperdrix
2012-10-04 18:02         ` Gilles Chanteperdrix
2012-10-05  8:06         ` Gilles Chanteperdrix
2012-10-05 18:47           ` Wayne Warren
2012-10-05 20:16             ` Gilles Chanteperdrix
2012-10-05 21:47               ` Wayne Warren
2012-10-05 22:43                 ` Gilles Chanteperdrix
2012-10-06  4:29                   ` Wayne Warren
2012-10-06  9:46                     ` Gilles Chanteperdrix
2012-10-09 20:55                       ` Wayne Warren
2012-10-09 21:12                         ` Gilles Chanteperdrix
2012-10-19 21:22                           ` Wayne Warren
2012-10-20  1:33                             ` Gilles Chanteperdrix
2012-10-22 19:22                               ` Wayne Warren
2012-10-22 19:25                                 ` Gilles Chanteperdrix
2012-10-22 19:34                                   ` Wayne Warren
2012-10-22 21:12                                     ` Gilles Chanteperdrix
2012-10-23 15:32                                       ` Wayne Warren
2012-10-23 20:12                                         ` Gilles Chanteperdrix
2012-10-24 17:32                                           ` Wayne Warren
2012-10-24 17:38                                             ` Gilles Chanteperdrix [this message]
2012-10-24 17:55                                               ` Wayne Warren
2012-10-24 18:05                                                 ` Gilles Chanteperdrix
2012-10-24 18:26                                                   ` Wayne Warren
2012-10-24 18:36                                                     ` Gilles Chanteperdrix
2012-10-24 17:36                                           ` Wayne Warren
2012-10-24 17:57                                             ` Gilles Chanteperdrix
2012-10-20  8:24                             ` Gilles Chanteperdrix
2012-10-19 21:32                           ` Wayne Warren
2012-10-20  1:36                             ` Gilles Chanteperdrix

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50882782.50003@xenomai.org \
    --to=gilles.chanteperdrix@xenomai.org \
    --cc=wwarren@emacinc.com \
    --cc=xenomai@xenomai.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.