Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-11 Thread Oleg Nesterov
On 04/11, Steven Rostedt wrote: > > On Thu, 10 Apr 2014 15:34:35 +0200 > Oleg Nesterov wrote: > > > On 04/10, Steven Rostedt wrote: > > > > > > On Wed, 9 Apr 2014 19:05:42 +0200 > > > Oleg Nesterov wrote: > > > > > > > --- a/kernel/fork.c > > > > +++ b/kernel/fork.c > > > > @@ -1472,7 +1472,9 @@

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-11 Thread Steven Rostedt
On Thu, 10 Apr 2014 15:34:35 +0200 Oleg Nesterov wrote: > On 04/10, Steven Rostedt wrote: > > > > On Wed, 9 Apr 2014 19:05:42 +0200 > > Oleg Nesterov wrote: > > > > > --- a/kernel/fork.c > > > +++ b/kernel/fork.c > > > @@ -1472,7 +1472,9 @@ static struct task_struct *copy_process(unsigned > >

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-11 Thread Steven Rostedt
On Thu, 10 Apr 2014 15:34:35 +0200 Oleg Nesterov o...@redhat.com wrote: On 04/10, Steven Rostedt wrote: On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov o...@redhat.com wrote: --- a/kernel/fork.c +++ b/kernel/fork.c @@ -1472,7 +1472,9 @@ static struct task_struct

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-11 Thread Oleg Nesterov
On 04/11, Steven Rostedt wrote: On Thu, 10 Apr 2014 15:34:35 +0200 Oleg Nesterov o...@redhat.com wrote: On 04/10, Steven Rostedt wrote: On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov o...@redhat.com wrote: --- a/kernel/fork.c +++ b/kernel/fork.c @@ -1472,7 +1472,9 @@

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Oleg Nesterov
On 04/10, Steven Rostedt wrote: > > On Wed, 9 Apr 2014 19:05:42 +0200 > Oleg Nesterov wrote: > > > --- a/kernel/fork.c > > +++ b/kernel/fork.c > > @@ -1472,7 +1472,9 @@ static struct task_struct *copy_process(unsigned long > > clone_flags, > > > > total_forks++; > >

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Oleg Nesterov
On 04/10, Steven Rostedt wrote: > > On Wed, 9 Apr 2014 19:05:42 +0200 > Oleg Nesterov wrote: > > > syscall_regfunc() and syscall_unregfunc() should set/clear > > TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race > > with copy_process() and miss the new child which was not added to

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Steven Rostedt
On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov wrote: > syscall_regfunc() and syscall_unregfunc() should set/clear > TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race > with copy_process() and miss the new child which was not added to > init_task.tasks list yet. > > Change

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Steven Rostedt
On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov wrote: > syscall_regfunc() and syscall_unregfunc() should set/clear > TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race > with copy_process() and miss the new child which was not added to > init_task.tasks list yet. > > Change

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Steven Rostedt
On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov o...@redhat.com wrote: syscall_regfunc() and syscall_unregfunc() should set/clear TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race with copy_process() and miss the new child which was not added to init_task.tasks list yet.

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Steven Rostedt
On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov o...@redhat.com wrote: syscall_regfunc() and syscall_unregfunc() should set/clear TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race with copy_process() and miss the new child which was not added to init_task.tasks list yet.

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Oleg Nesterov
On 04/10, Steven Rostedt wrote: On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov o...@redhat.com wrote: syscall_regfunc() and syscall_unregfunc() should set/clear TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race with copy_process() and miss the new child which was not

Re: [PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-10 Thread Oleg Nesterov
On 04/10, Steven Rostedt wrote: On Wed, 9 Apr 2014 19:05:42 +0200 Oleg Nesterov o...@redhat.com wrote: --- a/kernel/fork.c +++ b/kernel/fork.c @@ -1472,7 +1472,9 @@ static struct task_struct *copy_process(unsigned long clone_flags, total_forks++;

[PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-09 Thread Oleg Nesterov
syscall_regfunc() and syscall_unregfunc() should set/clear TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race with copy_process() and miss the new child which was not added to init_task.tasks list yet. Change copy_process() to update the child's TIF_SYSCALL_TRACEPOINT under

[PATCH RESEND 1/2] tracing: syscall_*regfunc() can race with copy_process()

2014-04-09 Thread Oleg Nesterov
syscall_regfunc() and syscall_unregfunc() should set/clear TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race with copy_process() and miss the new child which was not added to init_task.tasks list yet. Change copy_process() to update the child's TIF_SYSCALL_TRACEPOINT under