Hi..
Not an expert...but trying to help...
Anyway, I think you're sending HTML based message here...so it that's
true, please use plain text next time..
On Thu, Apr 24, 2008 at 1:57 PM, jasjit singh <[EMAIL PROTECTED]> wrote:
>
> Hi
>
> I am using following functions in my driver for a PCI device.
>
> wait_event_interruptible and wake_up_interruptible.
>
> my algorithm goes like this
>
> fun1()
> {
> waits for an event whose source is an interrupt from the PCI device; /*i.e
> calls wait_event_interruptible*/
> }
>
> fun2()
> {
> Check if there is an interrupt from the PCI device;
> if so, give wake up call to queue that is waited upon in fun1;/*i.e calls
> wake_up_interruptible*/
> }
Maybe that's the problem. It's awaken too many times, then it ate kernel stack.
I suggest to redesign your code so the "event handler" just do the
quick jobs such as ACK-ing the interrupt...and for the rest of lengthy
jobs, put in on workqueue.
regards,
Mulyadi.
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to [EMAIL PROTECTED]
Please read the FAQ at http://kernelnewbies.org/FAQ