[lkml]   [1999]   [Apr]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: looking for info on kernel_thread
On Tue, Apr 13, 1999 at 05:54:04PM +0100, Stephen C. Tweedie wrote:
> The are _non_ preemptable, just like any other process. The general
> rule is that we never, ever preempt a process which is running in kernel
> mode. That means that normal user processes do not get preempted in the
> middle of a system call, for example. It also means that kernel
> threads, which run entirely within kernel mode, are automatically
> protected against preemption by the scheduler.
> Kernel threads are still allowed to be rescheduled, but only
> voluntarily: if they sleep on a wait queue, wait for IO, take a page
> fault which has to satisfy disk or call the scheduler directly, they
> will be rescheduled.

Thanks for the answer on preemptiveness. In retrospect (now that
I have the answer) I realize it was probably a dumb question. Where
is the best source of information on kernel threads? There isn't
much discussion of them in the source code. I am interested in
how they are scheduled - it appears they are running at a very high
priority. It also appears that they are normal processes in the
view of the scheduler as I can not see any special code to handle
them in kernel/sched.c. Am I free to alter the priority of a kernel


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:51    [W:0.033 / U:2.924 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site