Re: [patch] rt,sched,numa: Move task_numa_free() to __put_task_struct(), which -rt offloads
On Fri, Feb 28, 2014 at 07:23:11AM +0100, Mike Galbraith wrote: > > Bad idea: > [ 908.026136] [] rt_spin_lock_slowlock+0xaa/0x2c0 > [ 908.026145] [] task_numa_free+0x31/0x130 > [ 908.026151] [] finish_task_switch+0xce/0x100 > [ 908.026156] [] thread_return+0x48/0x4ae > [ 908.026160] [] schedule+0x25/0xa0 > [ 908.026163] [] rt_spin_lock_slowlock+0xd5/0x2c0 > [ 908.026170] [] get_signal_to_deliver+0xaf/0x680 > [ 908.026175] [] do_signal+0x3d/0x5b0 > [ 908.026179] [] do_notify_resume+0x90/0xe0 > [ 908.026186] [] int_signal+0x12/0x17 > [ 908.026193] [<7ff2a388b1d0>] 0x7ff2a388b1cf > > Signed-off-by: Mike Galbraith Fair enough; thanks! -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patch] rt,sched,numa: Move task_numa_free() to __put_task_struct(), which -rt offloads
On Fri, Feb 28, 2014 at 07:23:11AM +0100, Mike Galbraith wrote: Bad idea: [ 908.026136] [8150ad6a] rt_spin_lock_slowlock+0xaa/0x2c0 [ 908.026145] [8108f701] task_numa_free+0x31/0x130 [ 908.026151] [8108121e] finish_task_switch+0xce/0x100 [ 908.026156] [81509c0a] thread_return+0x48/0x4ae [ 908.026160] [8150a095] schedule+0x25/0xa0 [ 908.026163] [8150ad95] rt_spin_lock_slowlock+0xd5/0x2c0 [ 908.026170] [810658cf] get_signal_to_deliver+0xaf/0x680 [ 908.026175] [8100242d] do_signal+0x3d/0x5b0 [ 908.026179] [81002a30] do_notify_resume+0x90/0xe0 [ 908.026186] [81513176] int_signal+0x12/0x17 [ 908.026193] [7ff2a388b1d0] 0x7ff2a388b1cf Signed-off-by: Mike Galbraith bitbuc...@online.de Fair enough; thanks! -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[patch] rt,sched,numa: Move task_numa_free() to __put_task_struct(), which -rt offloads
Bad idea: [ 908.026136] [] rt_spin_lock_slowlock+0xaa/0x2c0 [ 908.026145] [] task_numa_free+0x31/0x130 [ 908.026151] [] finish_task_switch+0xce/0x100 [ 908.026156] [] thread_return+0x48/0x4ae [ 908.026160] [] schedule+0x25/0xa0 [ 908.026163] [] rt_spin_lock_slowlock+0xd5/0x2c0 [ 908.026170] [] get_signal_to_deliver+0xaf/0x680 [ 908.026175] [] do_signal+0x3d/0x5b0 [ 908.026179] [] do_notify_resume+0x90/0xe0 [ 908.026186] [] int_signal+0x12/0x17 [ 908.026193] [<7ff2a388b1d0>] 0x7ff2a388b1cf Signed-off-by: Mike Galbraith diff --git a/kernel/fork.c b/kernel/fork.c index a17621c6cd42..332688e5e7b4 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -237,6 +237,7 @@ void __put_task_struct(struct task_struct *tsk) WARN_ON(atomic_read(>usage)); WARN_ON(tsk == current); + task_numa_free(tsk); security_task_free(tsk); exit_creds(tsk); delayacct_tsk_free(tsk); diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 6edbef296ece..94a963fd040e 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -2149,8 +2149,6 @@ static void finish_task_switch(struct rq *rq, struct task_struct *prev) if (mm) mmdrop(mm); if (unlikely(prev_state == TASK_DEAD)) { - task_numa_free(prev); - if (prev->sched_class->task_dead) prev->sched_class->task_dead(prev); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[patch] rt,sched,numa: Move task_numa_free() to __put_task_struct(), which -rt offloads
Bad idea: [ 908.026136] [8150ad6a] rt_spin_lock_slowlock+0xaa/0x2c0 [ 908.026145] [8108f701] task_numa_free+0x31/0x130 [ 908.026151] [8108121e] finish_task_switch+0xce/0x100 [ 908.026156] [81509c0a] thread_return+0x48/0x4ae [ 908.026160] [8150a095] schedule+0x25/0xa0 [ 908.026163] [8150ad95] rt_spin_lock_slowlock+0xd5/0x2c0 [ 908.026170] [810658cf] get_signal_to_deliver+0xaf/0x680 [ 908.026175] [8100242d] do_signal+0x3d/0x5b0 [ 908.026179] [81002a30] do_notify_resume+0x90/0xe0 [ 908.026186] [81513176] int_signal+0x12/0x17 [ 908.026193] [7ff2a388b1d0] 0x7ff2a388b1cf Signed-off-by: Mike Galbraith bitbuc...@online.de diff --git a/kernel/fork.c b/kernel/fork.c index a17621c6cd42..332688e5e7b4 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -237,6 +237,7 @@ void __put_task_struct(struct task_struct *tsk) WARN_ON(atomic_read(tsk-usage)); WARN_ON(tsk == current); + task_numa_free(tsk); security_task_free(tsk); exit_creds(tsk); delayacct_tsk_free(tsk); diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 6edbef296ece..94a963fd040e 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -2149,8 +2149,6 @@ static void finish_task_switch(struct rq *rq, struct task_struct *prev) if (mm) mmdrop(mm); if (unlikely(prev_state == TASK_DEAD)) { - task_numa_free(prev); - if (prev-sched_class-task_dead) prev-sched_class-task_dead(prev); -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/