Hello Hannes!
Could the system instability appear (for example), because the
"events" thread which runs on the same CPU like my kernel thread,
doesn't process the works which are in its work queue? Or are all
works of the "default" queue delivered to other "events" threads on
the free CPUs?
I am just guessing now, but if there are shared resources locked by
processes running on the CPU your driver hogged completely, it stalls
all other processes waiting for them.
And I figure there are other things but this one kernel thread running
on that CPU, too?
Yes, sure, there are other kernel threads (ksoftirqd, migration, kblockd
etc.) like the events thread, I wrote about, on the CPU which is used by
the polling thread. And because of that one of my first questions was if
it's possible to reserve one CPU for a kernel thread so that the kernel
won't run anything else on it.
BTW: With a preemptable kernel the thread gets its signal and the system
works stable...
I haven't tried your scheduler() idea yet, because we have some latency
problems and we must look for their reasons...
Thanks again and have a nice weekend!
Lukas
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ