[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-arm-kernel
Subject: Re: why cannot block inside interrupt context
From: Chris McKillop <cdm () killerstuff ! net>
Date: 2005-01-28 4:15:51
Message-ID: 41F9BC77.4060900 () killerstuff ! net
[Download RAW message or body]
Li Xinyi wrote:
> Russell King - ARM Linux wrote:
> > Define "block". Do you mean "sleep" ?
> >
>
> Yes, I mean sleep. More precisely, why cannot sleep inside an ISR.
>
Because there is no associated process to "wake up" after the sleep is
finished. Having a (new) process context setup each time there is an
interrupt is counter to the ideal of interrupts being small, fast and
efficient. There are certainly ways to trigger a process (thread) to run
on interrupt, which will let you sleep. If you aren't worried about
worst-case latency you can simply do all the processing outside of the ISR.
chris
-------------------------------------------------------------------
Subscription options: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ: http://www.arm.linux.org.uk/armlinux/mlfaq.php
Etiquette: http://www.arm.linux.org.uk/armlinux/mletiquette.php
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic