Messages in this thread | | | Date | Thu, 08 Mar 2007 18:18:18 -0800 (PST) | Subject | Re: [PATCH] Fix atomicity of TIF update in flush_thread() for x86_64 | From | David Miller <> |
| |
From: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> Date: Thu, 8 Mar 2007 21:15:53 -0500
> Fix atomicity of TIF update in flush_thread() for x86_64 > > Race : > > parent process executing : > sys_ptrace() > (lock_kernel()) > (ptrace_get_task_struct(pid)) > arch_ptrace() > ptrace_detach() > ptrace_disable(child); > clear_singlestep(child); > clear_tsk_thread_flag(child, TIF_SINGLESTEP); > (which clears the TIF_SINGLESTEP flag atomically from a different > process) > (put_task_struct(child)) > (unlock_kernel()) > > And at the same time, in the child process : > sys_execve() > do_execve() > search_binary_handler() > load_elf_binary() > flush_old_exec() > flush_thread() > doing a non-atomic thread flag update > > It applies on 2.6.20. > > Signed-off-by: Rebecca Schultz <rschultz@google.com> > Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Please fix all platforms, not just your favorite one, kthx. :-) - 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/
| |