On Tue, 12 Dec 2017 15:51:05 +0100
Peter Zijlstra <[email protected]> wrote:
> On Tue, Dec 12, 2017 at 09:47:05AM -0500, Ilia Mirkin wrote:
> > > So this 'thing' has huge gaping SMP holes in.
> >
> > Sure does! Probably why the following happens when mmiotrace is enabled:
> >
> > void enable_mmiotrace(void)
> > {
> > mutex_lock(&mmiotrace_mutex);
> > if (is_enabled())
> > goto out;
> >
> > if (nommiotrace)
> > pr_info("MMIO tracing disabled.\n");
> > kmmio_init();
> > enter_uniprocessor();
>
> ^^^^^
>
> Ah! I completely missed that. OK, that makes it much less broken :-)
/me just saw this thread.
Once I saw your initial complaint, my first thought was "I think he
doesn't know that it causes the system to turn into a uniprocessor
first".
My ftrace tests have a test that switches to each tracer, and this
mmiotrace catches the most bugs after an rc1 release. The bugs are
triggered by switching to and from uniprocessor mode. Hopefully, with
the new hotplug code, that will be a thing of the past.
>
> If I don't forget, I'll add some comments to this file to clarify that.
Great, thanks!
-- Steve
>