Messages in this thread Patch in this message | | | Date | Thu, 13 Apr 2006 16:09:24 -0700 | From | Greg KH <> | Subject | [patch 19/22] Fix suspend with traced tasks |
| |
-stable review patch. If anyone has any objections, please let us know.
------------------ strace /bin/bash misbehaves after resume; this fixes it.
(akpm: it's scary calling refrigerator() in state TASK_TRACED, but it seems to do the right thing).
Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
--- kernel/power/process.c | 3 +-- kernel/signal.c | 1 + 2 files changed, 2 insertions(+), 2 deletions(-)
--- linux-2.6.16.5.orig/kernel/power/process.c +++ linux-2.6.16.5/kernel/power/process.c @@ -25,8 +25,7 @@ static inline int freezeable(struct task (p->flags & PF_NOFREEZE) || (p->exit_state == EXIT_ZOMBIE) || (p->exit_state == EXIT_DEAD) || - (p->state == TASK_STOPPED) || - (p->state == TASK_TRACED)) + (p->state == TASK_STOPPED)) return 0; return 1; } --- linux-2.6.16.5.orig/kernel/signal.c +++ linux-2.6.16.5/kernel/signal.c @@ -1688,6 +1688,7 @@ static void ptrace_stop(int exit_code, i /* Let the debugger run. */ set_current_state(TASK_TRACED); spin_unlock_irq(¤t->sighand->siglock); + try_to_freeze(); read_lock(&tasklist_lock); if (likely(current->ptrace & PT_PTRACED) && likely(current->parent != current->real_parent || -- - 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/
| |