Hi.. On Sat, Mar 1, 2008 at 3:53 AM, Lukas Razik <linux@xxxxxxxxxx> wrote: > Maybe it's because I run the socket_recvmsg() function in a kernel > thread which blocks on the function and must wait to be executed by the > scheduler. > > Now I don't know how I could solve this problem: > How can I force the kernel to process a received message immediately > when it comes in through an UDP kernel socket? Sounds like it's due to context switch latency..or at least the interval between your workqueue getting queued into runnable list and actually running. Thus, it leads to ~1 ms...a.k.a the HZ interval...assuming you're using 1000 MHz May we ask? what preemption model do you use now? try full preemption instead of voluntary preemption. Other than that....maybe you need to think about better asynchronous communication. Something like AIO or callback based trigger. regards, Mulyadi. -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ