Re: [PATCH block/for-3.3/core] block: remove WARN_ON_ONCE() in exit_io_context()

From: Jens Axboe
Date: Tue Dec 27 2011 - 13:11:15 EST

On 2011-12-27 18:35, Tejun Heo wrote:
> 6e736be7 "block: make ioc get/put interface more conventional and fix
> race on alloction" added WARN_ON_ONCE() in exit_io_context() which
> triggers if !PF_EXITING. All tasks hitting exit_io_context() from
> task exit should have PF_EXITING set but task struct tearing down
> after fork failure calls into the function without PF_EXITING,
> triggering the condition.
> WARNING: at block/blk-ioc.c:234 exit_io_context+0x40/0x92()
> Pid: 17090, comm: trinity Not tainted 3.2.0-rc6-next-20111222-sasha-dirty #77
> Call Trace:
> [<ffffffff810b69a3>] warn_slowpath_common+0x8f/0xb2
> [<ffffffff810b6a77>] warn_slowpath_null+0x18/0x1a
> [<ffffffff8181a7a2>] exit_io_context+0x40/0x92
> [<ffffffff810b58c9>] copy_process+0x126f/0x1453
> [<ffffffff810b5c1b>] do_fork+0x120/0x3e9
> [<ffffffff8106242f>] sys_clone+0x26/0x28
> [<ffffffff82425803>] stub_clone+0x13/0x20
> ---[ end trace a2e4eb670b375238 ]---
> Reported-by: Sasha Levin <levinsasha928@xxxxxxxxx>
> Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
> ---
> Heh, sorry about that. Forgot about fork failure path. Just removing
> the WARN_ON_ONCE() should be enough. Thanks for reporting the problem.

Thanks, applied.

Jens Axboe

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