[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87wo5adfh8.fsf@nanos.tec.linutronix.de>
Date: Sun, 17 May 2020 12:26:43 +0200
From: Thomas Gleixner <tglx@...utronix.de>
To: paulmck@...nel.org,
"Joel Fernandes \(Google\)" <joel@...lfernandes.org>
Cc: linux-kernel@...r.kernel.org, Andy Lutomirski <luto@...nel.org>,
Frederic Weisbecker <fweisbec@...il.com>, frextrite@...il.com,
Ingo Molnar <mingo@...hat.com>,
Josh Triplett <josh@...htriplett.org>, kernel-team@...roid.com,
Lai Jiangshan <jiangshanlai@...il.com>,
madhuparnabhowmik04@...il.com,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
peterz@...radead.org, Petr Mladek <pmladek@...e.com>,
rcu@...r.kernel.org, rostedt@...dmis.org, vpillai@...italocean.com
Subject: Re: [PATCH v3 0/5] RCU dyntick nesting counter cleanups for rcu -dev
Paul,
"Paul E. McKenney" <paulmck@...nel.org> writes:
> And I have allegedly resolved the conflicts with Thomas's and Peter's
> series, or at least the noinstr-rcu-nmi-2020-05-15 branch of that series.
> At least one conflict was completely invisible to "git rebase" (but
> fortunately blindingly obvious to the compiler). This naturally makes
> me suspect that additional adjustments might be needed. Especially
> given that misplaced instrumentation_begin() and instrumentation_end()
> calls are invisible not only to the compiler, but also to rcutorture in
> my setup. (For example, tracing before instrumentation_begin() or after
> instrumentation_end() is a bug.)
there is tooling to verify that. If you merge
git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git entry-v7-full
into your dev branch (trivial conflict) and after building it, run:
objtool check -fal $BUILDIR/vmlinux.o
Note: This only covers built-in code. So if you have code you want to
check make sure it's not built as module.
Just did that and it complains about:
../build/vmlinux.o: warning: objtool: rcu_eqs_enter.constprop.0()+0xa9: call to rcu_preempt_deferred_qs() leaves .noinstr.text section
But that's even the case on my branch without your changes.
The call to rcu_preempt_deferred_qs() is definitely before
instrumentation_end() so this needs to be investigated on the objtool
side. Peter?
Thanks,
tglx
Powered by blists - more mailing lists