[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20190823191804.GA19963@zipoli.concurrent-rt.com>
Date: Fri, 23 Aug 2019 19:18:08 +0000
From: Joe Korty <Joe.Korty@...current-rt.com>
To: "julia@...com" <julia@...com>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"daniel.lezcano@...aro.org" <daniel.lezcano@...aro.org>,
"sboyd@...nel.org" <sboyd@...nel.org>,
"john.stultz@...aro.org" <john.stultz@...aro.org>,
"bigeasy@...utronix.de" <bigeasy@...utronix.de>,
"rostedt@...dmis.org" <rostedt@...dmis.org>,
"oleg@...hat.com" <oleg@...hat.com>,
"linux-rt-users@...r.kernel.org" <linux-rt-users@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Joe Korty <Joe.Korty@...current-rt.com>
Subject: [BUG] lockdep-reported deadlock with expiry_lock in 4.19.59-rt24 with
CONFIG_PREEMPT_RT=n
[BUG] lockdep-reported deadlock with expiry_lock in 4.19.59-rt24 with CONFIG_PREEMPT_RT=n.
In about one in seven to ten boots, lockdep reports a
deadlock of the form
[ 19.245929] WARNING: inconsistent lock state
[ 19.250200] 4.19.59-rt24 #1 Not tainted
[ 19.254040] --------------------------------
[ 19.258311] inconsistent {IN-SOFTIRQ-W} -> {SOFTIRQ-ON-W} usage.
[ 19.264319] rcu_preempt/13 [HC0[0]:SC0[0]:HE1:SE1] takes:
[ 19.269710] ... (&(&base->expiry_lock)->rlock){+.?.}, at: del_timer_sync+0xaa/0x100
...
[ 19.391803] lock(&(&base->expiry_lock)->rlock);
[ 19.396507] <Interrupt>
[ 19.399134] lock(&(&base->expiry_lock)->rlock);
[ 19.404014]
*** DEADLOCK ***
This splat happens with a 4.19.59-rt24 kernel, using the
attached .config. This .config turns off rt, has a bunch
of debug options enabled, and has enough drivers declared
static for me to be able to boot this kernel without
an initrd.
Today, most people would not be affected by this as those
that apply the rt patch typically also turn rt on. The
current effort to mainstream rt, however, means that the
use of nort with the rt patch applied will become common,
and at that time this problem will become significant.
(nitpick, maybe relevent detail: I am booting with RHEL8
userland.)
Regards,
Joe
View attachment "oops.pure.dmesg" of type "text/plain" (72549 bytes)
View attachment "oops.pure.config" of type "text/plain" (194139 bytes)
Powered by blists - more mailing lists