* [Adeos-main] ipipe_suspend_domain() not scheduling IRQ threads
@ 2007-11-26 16:26 Peter Schueller
0 siblings, 0 replies; only message in thread
From: Peter Schueller @ 2007-11-26 16:26 UTC (permalink / raw)
To: adeos-main
Hi!
I am currently trying to port IPIPE to a new architecture and have the following symptoms with my
first testcase:
- I am using a 2.6.23 Kernel and mainly looked at blackfin and i386 when porting.
- I create a domain with priority IPIPE_ROOT_PRIO+100 in a kernel module
- The domain entry does only: for(;;) ipipe_suspend_domain();
- After registering the domain I get the message "I-pipe: Domain Module Testdomain registered." and
after that the system hangs.
I traced the problem a bit and found out that
- ipipe_suspend_domain() always returns to the test domain with the highest priority.
- Within ipipe_suspend_domain() the function __ipipe_sync_stage() gets called for the root domain
and calls __ipipe_run_isr for
irq 1 (Linux Timer Tick)
irq 2 (network - the whole thing runs from NFS)
irq 32 (there are 32 hardware interrupts, the last one is irq 31, this must be a virtual irq)
I think the problem is that the IRQ threads do not get scheduled and so cannot handle the
Interrupts, although they have been "kicked" by __ipipe_run_isr.
It would be very kind if you could help me with the following questions:
- Are some of my assumptions/ideas above completely wrong?
- Which part of the code should schedule the IRQ threads? (__ipipe_run_isr only "kicks" them afaik)
- Where should ipipe_suspend_domain() hand control over to another domain (i.e. schedule in the
other domain because the higher priority domain has suspended itself)?
- Should I handle the Linux System timer differently from the other interrupts so that it is not
subject to IRQ threading?
Best Regards,
Peter
--
Peter Schüller
Theobroma Systems Design und Consulting GmbH
Gutheil-Schoder-Gasse 17, A-1230 Vienna, Austria
Phone: +43 (1) 2369893-403, Fax: +43 (1) 2369893-9-403
http://www.theobroma-systems.com
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2007-11-26 16:26 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-26 16:26 [Adeos-main] ipipe_suspend_domain() not scheduling IRQ threads Peter Schueller
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.