Thread (18 messages) 18 messages, 6 authors, 2005-03-17

Re: boot time scheduling hile atomic

flat view

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2005-03-16 00:20:03

On Fri, 2005-03-11 at 15:19 +0900, Takeharu KATO wrote:
Hi Joerg:

First of all, I am sorry to making mistake on my stack analysis.
After all, I found what is wrong.

The syscall_exit_work is called(jumped) by fork, strictly speaking,
this is caused by kernel_thead for init process.
At this point, kernel set a need_resched flag in thread_info struct
(flags member).
So, the system executes syscall_exit_work when
the swapper thread exited from syscall.

However, the syscall_exit_work routine does not check
preempt counts when it calls schedule function.

FYI, I post the patch which fix this problem.
I've confirmed the problem has been removed by this patch,
but I can not figure out whether it is truely
correct or not.
I think the problem is more why are we calling a syscall while the
preempt count is up ?

Ben.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help