On Thu, 7 Oct 2004, Arjan van de Ven wrote:
On Thu, Oct 07, 2004 at 08:26:22AM -0400, Richard B. Johnson wrote:On Thu, 7 Oct 2004, Arjan van de Ven wrote:
On Thu, Oct 07, 2004 at 08:01:47AM -0400, Richard B. Johnson wrote:Also, when this driver is running, transferring large volumes
of data, the kernel decides that there have been too many interrupts, and
does:
Message from syslogd@chaos at Wed Oct 6 21:22:57 2004 ...
chaos kernel: Disabling IRQ #18
This, in spite of the fact that interrupts occur only when
DMA completion happens and new data are available, i.e.,
one interrupt every 16 megabytes of data transferred.
Who decided that it had a right to disable my interrupt????
the kernel did because you don't return the proper value for "I handled the
IRQ" from your ISR.
Do you know what that value is? I can't find it. I just returned 0
and it worked for awhile.
IRQ_HANDLED is you handled the irq, IRQ_NONE if you didn't
The kernel calls cleanup_module() and the printk() shows that it
was truly called.
I fail to find where you declare module_exit() in your sources
Well I don't. Is it now required? What does it do? If I put
in module_exit() and have it execute cleanup_module(), it