linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mike Galbraith <efault@gmx.de>
To: Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Thomas Gleixner <tglx@linutronix.de>
Cc: LKML <linux-kernel@vger.kernel.org>,
	linux-rt-users <linux-rt-users@vger.kernel.org>,
	Steven Rostedt <rostedt@goodmis.org>
Subject: Re: [ANNOUNCE] v5.12-rc3-rt3
Date: Sun, 21 Mar 2021 08:46:56 +0100	[thread overview]
Message-ID: <e2e51e78094d14f6795221734c2fc8d66d6455a7.camel@gmx.de> (raw)
In-Reply-To: <1f63f1fcea10fc179881384cd838b1c9e5207b82.camel@gmx.de>

On Sat, 2021-03-20 at 09:18 +0100, Mike Galbraith wrote:
> On Fri, 2021-03-19 at 23:33 +0100, Sebastian Andrzej Siewior wrote:
> > Dear RT folks!
> >
> > I'm pleased to announce the v5.12-rc3-rt3 patch set.
>
> My little rpi4b is fairly unhappy with 5.12-rt, whereas 5.11-rt works
> fine on it.  The below spew is endless, making boot endless.  I turned
> it into a WARN_ON_ONCE to see if the thing would finish boot, and
> surprisingly, it seems perfectly fine with that bad idea. Having not
> the foggiest clue what I'm doing down in arm arch-land, bug is in no
> immediate danger :)

Actually, it looks like a defenseless little buglet, and this gripe
simply wants to be disabled for RT.

arm64: disable arch_faults_on_old_pte() preemptible() warning for RT

arch_faults_on_old_pte() was never called in < 5.12-rt, but 5.12 added
arch_wants_old_prefaulted_pte(), which is a wrapper thereof, and thus
finish_fault() -> do_set_pte() -> arch_wants_old_prefaulted_pte() now
calls it, in preemptible context, and a flood of complaints ensues.

Kill it for RT.

Signed-off-by: Mike Galbraith <efault@gmx.de>
---
 arch/arm64/include/asm/pgtable.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/arch/arm64/include/asm/pgtable.h
+++ b/arch/arm64/include/asm/pgtable.h
@@ -979,7 +979,7 @@ static inline void update_mmu_cache(stru
  */
 static inline bool arch_faults_on_old_pte(void)
 {
-	WARN_ON(preemptible());
+	WARN_ON(!IS_ENABLED(CONFIG_PREEMPT_RT) && preemptible());

 	return !cpu_has_hw_af();
 }

>
> [    2.216913] WARNING: CPU: 0 PID: 1 at arch/arm64/include/asm/pgtable.h:982 do_set_pte+0x1cc/0x1d4
> [    2.216949] Modules linked in:
> [    2.216961] CPU: 0 PID: 1 Comm: init Not tainted 5.12.0.g425ed5a-v8-rt #33
> [    2.216973] Hardware name: Raspberry Pi 4 Model B Rev 1.4 (DT)
> [    2.216979] pstate: 20000005 (nzCv daif -PAN -UAO -TCO BTYPE=--)
> [    2.216990] pc : do_set_pte+0x1cc/0x1d4
> [    2.217004] lr : filemap_map_pages+0x178/0x380
> [    2.217016] sp : ffffffc01153bbb0
> [    2.217020] x29: ffffffc01153bbb0 x28: fffffffe07d93080
> [    2.217033] x27: 0000000000000000 x26: ffffff8101c9e000
> [    2.217044] x25: ffffff8101b40fd8 x24: 0000000000000000
> [    2.217054] x23: ffffff8101674170 x22: 0000007fb1b4b000
> [    2.217064] x21: fffffffe07d93080 x20: ffffffc01153bcf0
> [    2.217073] x19: 00200001f64c2fc3 x18: 0000000000000000
> [    2.217082] x17: 0000000000000000 x16: 0000000000000000
> [    2.217091] x15: 0000000000000000 x14: 0000000000000000
> [    2.217100] x13: 0000000000000000 x12: 0000000000000000
> [    2.217108] x11: 0000000000000000 x10: 0000000000000000
> [    2.217117] x9 : ffffffc010209068 x8 : 000000000000000f
> [    2.217126] x7 : ffffff8101e87c68 x6 : fffffffe00000000
> [    2.217135] x5 : 0000000000101e8b x4 : ffffff8101e880a8
> [    2.217144] x3 : 0020000000000fc3 x2 : 0000000000000000
> [    2.217153] x1 : 0000000000000000 x0 : 0000000000000000
> [    2.217162] Call trace:
> [    2.217166]  do_set_pte+0x1cc/0x1d4
> [    2.217181]  filemap_map_pages+0x178/0x380
> [    2.217189]  __handle_mm_fault+0x75c/0x930
> [    2.217202]  handle_mm_fault+0x178/0x25c
> [    2.217214]  do_page_fault+0x16c/0x470
> [    2.217233]  do_translation_fault+0xbc/0xd8
> [    2.217244]  do_mem_abort+0x4c/0xbc
> [    2.217259]  el0_ia+0x68/0xcc
> [    2.217272]  el0_sync_handler+0x180/0x1b0
> [    2.217284]  el0_sync+0x170/0x180


  reply	other threads:[~2021-03-21  8:35 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-19 22:33 [ANNOUNCE] v5.12-rc3-rt3 Sebastian Andrzej Siewior
2021-03-20  8:18 ` Mike Galbraith
2021-03-21  7:46   ` Mike Galbraith [this message]
2021-03-22  3:10     ` Mike Galbraith
2021-03-25 10:25   ` Kurt Kanzenbach

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=e2e51e78094d14f6795221734c2fc8d66d6455a7.camel@gmx.de \
    --to=efault@gmx.de \
    --cc=bigeasy@linutronix.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rt-users@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).