Kernel Thread in Device Driver
From: Kiran Kumar Gaitonde
Date: Fri Dec 03 2004 - 05:12:31 EST
Hi all.
I am working on a device driver with the device interrupts are actaully
serviced in a kernel thread and not in the interrupt handler registered
with the kernel. The interrupt handler justs wakes up the kthread when a
interrupt occurs. This is done as we need to use semaphores while
performing IO to sync the read and writes.
Now I have come across a situation where the kthread is consuming 70% of
CPU time as it is in a loop to service the interrupts happening very
very fast, and it is rearly saying schedule(). The performance of the
application which uses this device to communicate, is not good as it is
not getting CPU at the right time.
Can anybody tell me what may be the problem. Also any suggestions to
overcome this issue?
Thanks in Advance,
Regards,
Kiran Gaitonde.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/