* Task Queue Imediate Bottom Halfs question.
@ 2001-08-19 22:38 Ira Weiny
2001-08-19 23:18 ` Ben Collins
2001-08-20 6:02 ` Michel Lanners
0 siblings, 2 replies; 4+ messages in thread
From: Ira Weiny @ 2001-08-19 22:38 UTC (permalink / raw)
To: Linux1394dev, linuxppc-dev
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/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Task Queue Imediate Bottom Halfs question.
2001-08-19 22:38 Task Queue Imediate Bottom Halfs question Ira Weiny
@ 2001-08-19 23:18 ` Ben Collins
2001-08-20 6:02 ` Michel Lanners
1 sibling, 0 replies; 4+ messages in thread
From: Ben Collins @ 2001-08-19 23:18 UTC (permalink / raw)
To: Ira Weiny; +Cc: Linux1394dev, linuxppc-dev
On Sun, Aug 19, 2001 at 03:38:38PM -0700, Ira Weiny wrote:
> 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?
A performance hit? Running it straight from the interrupt handler mean
that the handler is blocking until the request is finished. Not only
does it have to wait for the ohci layer to process it, but also the
ieee1394 layer, which in turn processes to the protocol drivers (sbp2,
etc.). Really bad.
Ben
--
.----------=======-=-======-=========-----------=====------------=-=-----.
/ Ben Collins -- ...on that fantastic voyage... -- Debian GNU/Linux \
` bcollins@debian.org -- bcollins@openldap.org -- bcollins@linux.com '
`---=========------=======-------------=-=-----=-===-======-------=--=---'
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Task Queue Imediate Bottom Halfs question.
2001-08-19 22:38 Task Queue Imediate Bottom Halfs question Ira Weiny
2001-08-19 23:18 ` Ben Collins
@ 2001-08-20 6:02 ` Michel Lanners
2001-08-21 9:04 ` Rodney Schneider
1 sibling, 1 reply; 4+ messages in thread
From: Michel Lanners @ 2001-08-20 6:02 UTC (permalink / raw)
To: iweiny; +Cc: linux1394-devel, linuxppc-dev
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/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Task Queue Imediate Bottom Halfs question.
2001-08-20 6:02 ` Michel Lanners
@ 2001-08-21 9:04 ` Rodney Schneider
0 siblings, 0 replies; 4+ messages in thread
From: Rodney Schneider @ 2001-08-21 9:04 UTC (permalink / raw)
To: linux1394-devel; +Cc: linuxppc-dev
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:
> > 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/
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2001-08-21 9:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-08-19 22:38 Task Queue Imediate Bottom Halfs question Ira Weiny
2001-08-19 23:18 ` Ben Collins
2001-08-20 6:02 ` Michel Lanners
2001-08-21 9:04 ` Rodney Schneider
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).