This is going to seem like a real stupid question but I just got burned
because I did not know the answer and I would like to know.
In the 1394 stack (OHCI) the IRQ handler schedules "bottom half tasklets
(task queues in the old stack)". They are scheduled to be "imediate"
bottom half's. I thought (wrongly) that a bottom half executed out of
IRQ time with interrupts __enabled__. As a result I put in a Async Rec
handler which used printk (60ms worth to be exact). Needless to say
this greatly disturbed our ISO transfers which did not get processed.
So, my question is, why use a bottom half here? Or really what is the
difference between scheduling a task queue (tasklet) imediate vs just
running the code in the IRQ handler?
Thanks,
Ira Weiny
iweiny@acm.org
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
On 19 Aug, this message from Ira Weiny echoed through cyberspace:
So, my question is, why use a bottom half here? Or really what is the
difference between scheduling a task queue (tasklet) imediate vs just
running the code in the IRQ handler?
Have a look at Documentation/DocBook/kernel-hacking.tmpl.
It explains some of these things quite well, I think.
Michel
-------------------------------------------------------------------------
Michel Lanners | " Read Philosophy. Study Art.
23, Rue Paul Henkes | Ask Questions. Make Mistakes.
L-1710 Luxembourg |
email mlan@cpu.lu |
http://www.cpu.lu/~mlan | Learn Always. "
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
Hi,
This free book from Oreilly might also help you:
http://www.xml.com/ldd/chapter/book/index.html
Regards,
-- Rodney
On Mon, 20 Aug 2001, Michel Lanners wrote:
On 19 Aug, this message from Ira Weiny echoed through cyberspace:
quoted
So, my question is, why use a bottom half here? Or really what is the
difference between scheduling a task queue (tasklet) imediate vs just
running the code in the IRQ handler?
Have a look at Documentation/DocBook/kernel-hacking.tmpl.
It explains some of these things quite well, I think.
Michel
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/