From: Peter Zijlstra <peterz@infradead.org>
To: Kevin Shanahan <kevin@shanahan.id.au>
Cc: Siegfried Metz <frame@mailbox.org>,
linux-kernel@vger.kernel.org, tglx@linutronix.de,
rafael.j.wysocki@intel.com, len.brown@intel.com,
rjw@rjwysocki.net, diego.viola@gmail.com, rui.zhang@intel.com,
viktor_jaegerskuepper@freenet.de
Subject: Re: REGRESSION: boot stalls on several old dual core Intel CPUs
Date: Mon, 3 Sep 2018 09:25:06 +0200 [thread overview]
Message-ID: <20180903072506.GS24124@hirez.programming.kicks-ass.net> (raw)
In-Reply-To: <20180901022125.GO4941@tuon.disenchant.local>
On Sat, Sep 01, 2018 at 11:51:26AM +0930, Kevin Shanahan wrote:
> On Thu, Aug 30, 2018 at 03:04:39PM +0200, Peter Zijlstra wrote:
> > On Thu, Aug 30, 2018 at 12:55:30PM +0200, Siegfried Metz wrote:
> > > Dear kernel developers,
> > >
> > > since mainline kernel 4.18 (up to the latest mainline kernel 4.18.5)
> > > Intel Core 2 Duo processors are affected by boot stalling early in the
> > > boot process. As it is so early there is no dmesg output (or any log).
> > >
> > > A few users in the Arch Linux community used git bisect and tracked the
> > > issue down to this the bad commit:
> > > 7197e77abcb65a71d0b21d67beb24f153a96055e clocksource: Remove kthread
> >
> > I just dug out my core2duo laptop (Lenovo T500) and build a tip/master
> > kernel for it (x86_64 debian distro .config).
> >
> > Seems to boot just fine.. 3/3 so far.
> >
> > Any other clues?
>
> One additional data point, my affected system is a Dell Latitude E6400
> laptop which has a P8400 CPU:
>
> vendor_id : GenuineIntel
> cpu family : 6
> model : 23
> model name : Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz
> stepping : 6
> microcode : 0x610
>
> Judging from what is being discussed in the Arch forums, it does seem
> to related to the CPU having unstable TSC and transitioning to another
> clock source.
Yes; Core2 doesn't have stable TSC.
> Workarounds that seem to be reliable are either booting
> with clocksource=<something_not_tsc> or with nosmp.
nosmp is weird; because even on UP TSC should stop in C state.
processor_idle (acpi_idle) should mark the TSC as unstable on Core2 when
it loads (does so on my T500).
> One person did point out that the commit that introduced the kthread
> did so to remove a deadlock - is the circular locking dependency
> mentioned in that commit still relevant?
>
> commit 01548f4d3e8e94caf323a4f664eb347fd34a34ab
> Author: Martin Schwidefsky <schwidefsky@de.ibm.com>
> Date: Tue Aug 18 17:09:42 2009 +0200
>
> clocksource: Avoid clocksource watchdog circular locking dependency
>
> stop_machine from a multithreaded workqueue is not allowed because
> of a circular locking dependency between cpu_down and the workqueue
> execution. Use a kernel thread to do the clocksource downgrade.
I cannot find stop_machine usage there; either it went away or I need to
like wake up.
next prev parent reply other threads:[~2018-09-03 7:25 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-30 10:55 REGRESSION: boot stalls on several old dual core Intel CPUs Siegfried Metz
2018-08-30 13:04 ` Peter Zijlstra
2018-08-30 13:48 ` Peter Zijlstra
2018-09-01 2:21 ` Kevin Shanahan
2018-09-03 7:25 ` Peter Zijlstra [this message]
2018-09-03 7:38 ` Thomas Gleixner
2018-09-03 8:54 ` Peter Zijlstra
2018-09-03 9:33 ` Peter Zijlstra
2018-09-03 11:30 ` Viktor Jägersküpper
2018-09-03 12:34 ` Kevin Shanahan
2018-09-03 21:34 ` Siegfried Metz
2018-09-04 13:44 ` Niklas Cassel
2018-09-05 8:41 ` [PATCH] clocksource: Revert "Remove kthread" Peter Zijlstra
2018-09-06 10:46 ` [tip:timers/urgent] " tip-bot for Peter Zijlstra
2018-09-06 21:42 ` tip-bot for Peter Zijlstra
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=20180903072506.GS24124@hirez.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=diego.viola@gmail.com \
--cc=frame@mailbox.org \
--cc=kevin@shanahan.id.au \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rafael.j.wysocki@intel.com \
--cc=rjw@rjwysocki.net \
--cc=rui.zhang@intel.com \
--cc=tglx@linutronix.de \
--cc=viktor_jaegerskuepper@freenet.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.