[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20111227173559.GD17712@google.com>
Date: Tue, 27 Dec 2011 09:35:59 -0800
From: Tejun Heo <tj@...nel.org>
To: Jens Axboe <jaxboe@...ionio.com>
Cc: Sasha Levin <levinsasha928@...il.com>,
linux-kernel <linux-kernel@...r.kernel.org>
Subject: [PATCH block/for-3.3/core] block: remove WARN_ON_ONCE() in
exit_io_context()
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@...il.com>
Signed-off-by: Tejun Heo <tj@...nel.org>
---
Heh, sorry about that. Forgot about fork failure path. Just removing
the WARN_ON_ONCE() should be enough. Thanks for reporting the problem.
block/blk-ioc.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/block/blk-ioc.c b/block/blk-ioc.c
index 33fae7d..27a06e0 100644
--- a/block/blk-ioc.c
+++ b/block/blk-ioc.c
@@ -230,9 +230,6 @@ void exit_io_context(struct task_struct *task)
{
struct io_context *ioc;
- /* PF_EXITING prevents new io_context from being attached to @task */
- WARN_ON_ONCE(!(current->flags & PF_EXITING));
-
task_lock(task);
ioc = task->io_context;
task->io_context = NULL;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists