Messages in this thread Patch in this message |  | | | Date | Wed, 12 Jan 2011 09:34:38 +0800 | | Subject | Re: WARNING: at kernel/workqueue.c [was: mmotm 2011-01-06-15-41 uploaded] | | From | Hillf Danton <> |
| |
On Tue, Jan 11, 2011 at 10:32 PM, Tejun Heo <tj@kernel.org> wrote: > On Mon, Jan 10, 2011 at 03:36:09PM -0800, Tony Luck wrote: >> > Here it is, too. >> > mmotm-01-06 >> >> Also in today's linux-next (tag: next-20110110) on ia64: >> >> >> ------------[ cut here ]------------ >> WARNING: at kernel/workqueue.c:1202 worker_enter_idle+0x3f0/0x4a0() >> Hardware name: server rx2620 >> Modules linked in: >> >> Call Trace: >> [<a000000100014cb0>] show_stack+0x50/0xa0 >> sp=e0000040600d7c30 bsp=e0000040600d0dd0 >> [<a000000100bcaa20>] dump_stack+0x30/0x50 >> sp=e0000040600d7e00 bsp=e0000040600d0db8 >> [<a000000100082260>] warn_slowpath_common+0xc0/0x100 >> sp=e0000040600d7e00 bsp=e0000040600d0d78 >> [<a0000001000822e0>] warn_slowpath_null+0x40/0x60 >> sp=e0000040600d7e00 bsp=e0000040600d0d50 >> [<a0000001000b0830>] worker_enter_idle+0x3f0/0x4a0 >> sp=e0000040600d7e00 bsp=e0000040600d0d28 >> [<a0000001000b2c80>] worker_thread+0x8c0/0x980 >> sp=e0000040600d7e00 bsp=e0000040600d0c28 >> [<a0000001000c08c0>] kthread+0x120/0x160 >> sp=e0000040600d7e00 bsp=e0000040600d0be8 >> [<a000000100012ef0>] kernel_thread_helper+0x30/0x60 >> sp=e0000040600d7e30 bsp=e0000040600d0bc0 >> [<a00000010000a0c0>] start_kernel_thread+0x20/0x40 >> sp=e0000040600d7e30 bsp=e0000040600d0bc0 >> ---[ end trace 7e2fb881ec0622f8 ]--- > > Ah, of course, it's commit 21ec12364bb78b72ad36b94269c64b3ee31b038f > (workqueue: remove noop condition check in worker_clr_flags()). The > condition it removes is not a noop. Reverting it. >
Hey all
It looks that WORKER_NOT_RUNNING could be defined finer :/
thanks Hillf --- --- a/kernel/workqueue.c 2011-01-05 08:50:20.000000000 +0800 +++ b/kernel/workqueue.c 2011-01-12 09:40:56.000000000 +0800 @@ -62,8 +62,9 @@ enum { WORKER_CPU_INTENSIVE = 1 << 6, /* cpu intensive */ WORKER_UNBOUND = 1 << 7, /* worker is unbound */
- WORKER_NOT_RUNNING = WORKER_PREP | WORKER_ROGUE | WORKER_REBIND | - WORKER_CPU_INTENSIVE | WORKER_UNBOUND, + WORKER_NOT_RUNNING = (WORKER_PREP | WORKER_ROGUE | + WORKER_REBIND | WORKER_CPU_INTENSIVE | + WORKER_UNBOUND),
/* gcwq->trustee_state */ TRUSTEE_START = 0, /* start */ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |