Re: [patch] preempt-timing-on-2.6.8-rc2-O2

From: Ingo Molnar
Date: Mon Aug 02 2004 - 05:51:05 EST



* Ingo Molnar <mingo@xxxxxxx> wrote:

> (kjournald/189): 997us non-preemptible critical section violated 100 us
> preempt threshold starting at journal_commit_transaction+0x642/0x2b10
> and ending at journal_commit_transaction+0x24ce/0x2b10
>
> [<c0105d7e>] dump_stack+0x1e/0x30
> [<c011ad0f>] dec_preempt_count+0x3f/0x50
> [<c01dfd3e>] journal_commit_transaction+0x24ce/0x2b10
> [<c01e3bf4>] kjournald+0x1a4/0x710
> [<c0102765>] kernel_thread_helper+0x5/0x10

ok, found it - it's a false positive in commit.c due to need_resched()
not doing a touch_preempt_timing(). Newest patch at:

http://redhat.com/~mingo/voluntary-preempt/preempt-timing-on-2.6.8-rc2-O2

i changed need_resched() to do a touch_preempt_timing() - this also got
rid of some other changes. All code i checked really takes
need_resched() seriously if it looks at it - any reason why you didnt
add this to need_resched() before?

Ingo
-
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/