lkml.org 
[lkml]   [2007]   [Mar]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] Fix atomicity of TIF update in flush_thread() for x86_64
From
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/

\
 
 \ /
  Last update: 2007-03-09 03:21    [W:0.030 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site