I`m modifying a network device driver by adding
encrytion and decrytion within it. The NIC is an interrupt driver one which
generates an interrupt on arrival of a packet. I find that sometimes, the
following error occurs :
Kernel Panic
: Killing interrupt handler
In interrupt
handler: loosing sync
The system hangs after this.
I`m an disabling interrupts at the beginning of the
interrupt handler (by using spin_lock_store) and reanbling them at the end (by
using spin_unlock_restore). I interrupt handler is currently takes a
little time executing the decrytion code. Hence, tried putting the decrytion
code after re-enabling interrupts. This has not helped. I`m not generating any
interrupts within my interrupt handler. Am using GFP_ATOMIC flag for
kmalloc within the handler. On searching the net, I find that these
errors(killing interrupt etc) have been documented before while doing insmod but
not while actually using the card. Please help.
Thanx in advance ,
Rahul
Please help me on
this |