From: Thomas Gleixner <tglx@linutronix.de>
To: Borislav Petkov <bp@alien8.de>
Cc: Peter Zijlstra <peterz@infradead.org>,
Steven Rostedt <rostedt@goodmis.org>,
Jiri Olsa <jolsa@redhat.com>,
"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
linux-kernel@vger.kernel.org, Ingo Molnar <mingo@kernel.org>,
Josh Triplett <josh@joshtriplett.org>,
Andi Kleen <andi@firstfloor.org>,
Jan Stancek <jstancek@redhat.com>
Subject: Re: [BUG] msr-trace.h:42 suspicious rcu_dereference_check() usage!
Date: Tue, 29 Nov 2016 14:59:01 +0100 (CET) [thread overview]
Message-ID: <alpine.DEB.2.20.1611291448080.4358@nanos> (raw)
In-Reply-To: <20161129131649.hajagzcjfhn5cenp@pd.tnic>
On Tue, 29 Nov 2016, Borislav Petkov wrote:
> On Mon, Nov 21, 2016 at 05:06:54PM +0100, Borislav Petkov wrote:
> > IOW, what's the worst thing that can happen if we did this below?
> >
> > We basically get rid of the detection and switch the timer to broadcast
> > mode immediately on the halting CPU.
> >
> > amd_e400_idle() is behind an "if (cpu_has_bug(c, X86_BUG_AMD_APIC_C1E))"
> > check so it will run on the affected CPUs only...
> >
> > Thoughts?
>
> Actually, here's a better version. The E400 detection works only after
> ACPI has been enabled so we piggyback the end of acpi_init().
>
> We don't need the MSR read now - we do
>
> if (static_cpu_has_bug(X86_BUG_AMD_APIC_C1E))
>
> on the idle path which is as fast as it gets.
>
> Any complaints about this before I go and test it everywhere?
The issue is that you obvioulsy start with the assumption, that the machine
has this bug. As a consequence the machine is brute forced into tick
broadcast mode, which cannot be reverted when you clear that misfeature
after ACPI init. So in case of !NOHZ and !HIGHRES the periodic tick is
forced into broadcast mode, which is not what you want.
As far as I understood the whole magic, this C1E misfeature takes only
effect _after_ ACPI has been initialized. So instead of setting the bug in
early boot and therefor forcing the broadcast nonsense, we should only set
it when ACPI has actually detected it.
Thanks,
tglx
next prev parent reply other threads:[~2016-11-29 14:02 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-21 0:53 Jiri Olsa
2016-11-21 9:02 ` Paul E. McKenney
2016-11-21 9:43 ` Peter Zijlstra
2016-11-21 11:00 ` Paul E. McKenney
2016-11-21 9:28 ` Peter Zijlstra
2016-11-21 9:34 ` Jiri Olsa
2016-11-21 9:42 ` Peter Zijlstra
2016-11-21 11:22 ` Jiri Olsa
2016-11-21 11:31 ` Peter Zijlstra
2016-11-21 12:49 ` Jiri Olsa
2016-11-21 12:58 ` Peter Zijlstra
2016-11-21 14:15 ` Steven Rostedt
2016-11-21 14:37 ` Peter Zijlstra
2016-11-21 15:35 ` Borislav Petkov
2016-11-21 15:41 ` Peter Zijlstra
2016-11-21 16:06 ` Borislav Petkov
2016-11-29 13:16 ` Borislav Petkov
2016-11-29 13:59 ` Thomas Gleixner [this message]
2016-11-30 8:48 ` Borislav Petkov
2016-11-30 8:54 ` Thomas Gleixner
2016-11-30 9:07 ` Borislav Petkov
2016-11-30 9:14 ` Thomas Gleixner
2016-11-29 14:04 ` Jiri Olsa
2016-11-21 14:20 ` Steven Rostedt
2016-11-21 17:06 ` Andi Kleen
2016-11-21 17:18 ` Peter Zijlstra
2016-11-21 17:45 ` Andi Kleen
2016-11-21 18:01 ` Steven Rostedt
2016-11-21 18:06 ` Andi Kleen
2016-11-21 18:22 ` Steven Rostedt
2016-11-21 18:37 ` Andi Kleen
2016-11-21 19:06 ` Steven Rostedt
2016-11-21 19:15 ` Steven Rostedt
2016-11-21 20:44 ` Andi Kleen
2016-11-22 8:19 ` Paul E. McKenney
2016-11-22 14:39 ` Steven Rostedt
2016-11-22 19:05 ` Andi Kleen
2016-11-24 2:06 ` Steven Rostedt
2016-11-28 21:48 ` Andi Kleen
2016-11-28 22:46 ` Steven Rostedt
2016-11-28 23:10 ` Andi Kleen
2016-11-21 17:55 ` Steven Rostedt
2016-11-21 18:24 ` Steven Rostedt
2016-11-21 20:12 ` Paul E. McKenney
2017-02-23 12:24 ` Jiri Olsa
2017-02-23 17:11 ` Andi Kleen
2017-02-23 17:28 ` Peter Zijlstra
2017-02-23 17:56 ` Borislav Petkov
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=alpine.DEB.2.20.1611291448080.4358@nanos \
--to=tglx@linutronix.de \
--cc=andi@firstfloor.org \
--cc=bp@alien8.de \
--cc=jolsa@redhat.com \
--cc=josh@joshtriplett.org \
--cc=jstancek@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=paulmck@linux.vnet.ibm.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
/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
all inboxes | Powered by JetHome®