linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
To: Oleg Nesterov <oleg@redhat.com>
Cc: Dave Jones <davej@redhat.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
	Serge Hallyn <serge.hallyn@canonical.com>,
	linux-kernel@vger.kernel.org
Subject: Re: lots of suspicious RCU traces
Date: Wed, 24 Oct 2012 11:21:11 -0700	[thread overview]
Message-ID: <20121024182111.GA2340@swordfish> (raw)
In-Reply-To: <20121024180608.GA22840@redhat.com>

On (10/24/12 20:06), Oleg Nesterov wrote:
> On 10/24, Sergey Senozhatsky wrote:
> >
> > small question,
> >
> > ptrace_notify() and forward calls are able to both indirectly and directly call schedule(),
> > /* direct call from ptrace_stop()*/,
> > should, in this case, rcu_user_enter() be called before tracehook_report_syscall_exit(regs, step)
> > and ptrace chain?
> 
> Well, I don't really understand this magic... but why?
>

My understanding is (I may be wrong) that we can schedule() from ptrace chain to
some arbitrary task, which will continue its execution from the point where RCU assumes
CPU as not idle, while CPU in fact still in idle state -- no one said rcu_idle_exit()
(or similar) prior to schedule() call. 

if so, does the same apply to in_user?

	-ss

> Until we return to user-mode this CPU should be in "in_user = false" state.
> 
> I am not sure I understand how it is guaranteed that rcu_user_exit() was
> called... probably TIF_NOHZ should trigger the slow path and ensure that
> syscall_trace_enter()->rcu_user_exit() will be called.
> 
> Oleg.
> 

  reply	other threads:[~2012-10-24 18:23 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-17  3:49 lots of suspicious RCU traces Dave Jones
2012-10-24 16:42 ` Sergey Senozhatsky
2012-10-24 18:06   ` Oleg Nesterov
2012-10-24 18:21     ` Sergey Senozhatsky [this message]
2012-10-24 18:52       ` Oleg Nesterov
2012-10-24 19:17         ` Sergey Senozhatsky
2012-10-24 19:41           ` Paul E. McKenney
2012-10-24 19:50             ` Sergey Senozhatsky
2012-10-24 20:11               ` Paul E. McKenney
2012-10-24 20:15                 ` Sergey Senozhatsky
2012-10-24 22:32       ` Frederic Weisbecker
2012-10-25  5:50         ` Sergey Senozhatsky
2012-10-25  7:06           ` Frederic Weisbecker
2012-10-25  7:41             ` Sergey Senozhatsky
2012-10-26  9:40               ` [PATCH] rcu: Fix unrecovered RCU user mode in syscall_trace_leave() Frederic Weisbecker
2012-10-26  9:44               ` lots of suspicious RCU traces Frederic Weisbecker
2012-10-26 11:16                 ` Sergey Senozhatsky
2012-10-26 15:16                 ` Dave Jones
2012-10-25  5:55         ` Sergey Senozhatsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20121024182111.GA2340@swordfish \
    --to=sergey.senozhatsky@gmail.com \
    --cc=davej@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oleg@redhat.com \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=serge.hallyn@canonical.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).