NetBSD Problem Report #56922
From martin@aprisoft.de Mon Jul 11 09:32:23 2022
Return-Path: <martin@aprisoft.de>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id B654A1A921F
for <gnats-bugs@gnats.NetBSD.org>; Mon, 11 Jul 2022 09:32:23 +0000 (UTC)
Message-Id: <20220711093214.322A45CC827@emmas.aprisoft.de>
Date: Mon, 11 Jul 2022 11:32:14 +0200 (CEST)
From: martin@NetBSD.org
Reply-To: martin@NetBSD.org
To: gnats-bugs@NetBSD.org
Subject: fast softints are broken on powerpc
X-Send-Pr-Version: 3.95
>Number: 56922
>Category: port-powerpc
>Synopsis: fast softints are broken on powerpc
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: port-powerpc-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jul 11 09:35:00 +0000 2022
>Last-Modified: Mon Oct 09 13:40:02 +0000 2023
>Originator: Martin Husemann
>Release: NetBSD 9.99.98
>Organization:
The NetBSD Foundation, Inc.
>Environment:
System: NetBSD big-apple.aprisoft.de 9.99.98 NetBSD 9.99.98 (POWERMAC_G5.MP) #58: Wed Jun 29 19:47:47 CEST 2022 martin@seven-days-to-the-wolves.aprisoft.de:/work/src/sys/arch/macppc/compile/POWERMAC_G5.MP macppc
Architecture: powerpc
Machine: macppc
>Description:
On high load powerpc machienes get into a strange state where everything
grinds to a halt and no new process (or only a few) can be created before
total lockup.
One way to trigger it (but not 100% reliable) is:
cd /usr/tests/lib/librumpclient
atf-run t_exec | atf-report
When the test does not complete, ddb often sees artifacts like this:
db{0} ps
[..]
0 > 115 7 1 200 10428680 nd6_timer
[..]
db{0}> bt/a 10428680
trace: pid 0 lid 115 at 0x10423c20
0x10423c80: at softint_fast_dispatch+0x40
0x10423ca0: at kernconfig_recurse+0x10
0x10423cf0: at kernconfig_recurse+0x10
0x10423d10: at cpu_info+0xa7c
0x10423d20: at callout_hardclock+0x28
0x10423d40: at decr_intr+0x174
0x10423d70: at trapstart+0x800
0x10423e40: at cpu_info+0xa7c
0x10423e80: at nd6_timer_work+0x64
0x10423ee0: at workqueue_worker+0x134
and disabling fast softints makes the kernel perfectly stable and avoids
the problem.
>How-To-Repeat:
s/a
>Fix:
n/a
>Audit-Trail:
From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/56922 CVS commit: src/sys/arch/powerpc/include
Date: Mon, 11 Jul 2022 09:39:10 +0000
Module Name: src
Committed By: martin
Date: Mon Jul 11 09:39:10 UTC 2022
Modified Files:
src/sys/arch/powerpc/include: intr.h
Log Message:
PR 56922: disabel fast softints for powerpc for now.
To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/sys/arch/powerpc/include/intr.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: Martin Husemann <martin@duskware.de>
To: gnats-bugs@NetBSD.org
Cc:
Subject: Re: port-powerpc/56922: fast softints are broken on powerpc
Date: Tue, 19 Jul 2022 12:08:42 +0200
Unfortunately more intensive testing shows that disabling
fast softints does not avoid the issue completely, just makes it
less likely.
So it seems it is not *fast* softints that are broken, but softints in
general.
Martin
From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/56922 CVS commit: src/sys/arch/powerpc/include/booke
Date: Mon, 12 Sep 2022 08:14:55 +0000
Module Name: src
Committed By: rin
Date: Mon Sep 12 08:14:55 UTC 2022
Modified Files:
src/sys/arch/powerpc/include/booke: intr.h
Log Message:
PR port-powerpc/56922
__HAVE_FAST_SOFTINTS is broken for powerpc.
Disable it temporarily also for booke.
To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/powerpc/include/booke/intr.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/56922 CVS commit: src/sys/arch/powerpc/oea
Date: Mon, 9 Oct 2023 13:01:58 +0000
Module Name: src
Committed By: rin
Date: Mon Oct 9 13:01:58 UTC 2023
Modified Files:
src/sys/arch/powerpc/oea: pmap.c
Log Message:
powerpc/oea: pmap: Use pool_allocator_nointr() for pmap_pool
As done for (majority of) other pmap implementations.
pmap_pool_allocator() allocates memory below 256MB, but it is not
necessary for struct pmap.
Fix part of PR kern/57621, i.e., stall in pmap_create(9).
There should be another bugs that cause (MP?) kernel hangs
reported in the PR, in pmap or other MD components for powerpc
(PR port-powerpc/56922 should be one of the candidates).
XXX
pmap for powerpc/oea apparently needs some clean ups. But leave it
as is, and pull up this minimum fix to netbsd-10 at the moment.
To generate a diff of this commit:
cvs rdiff -u -r1.114 -r1.115 src/sys/arch/powerpc/oea/pmap.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/56922 CVS commit: [netbsd-10] src/sys/arch/powerpc/oea
Date: Mon, 9 Oct 2023 13:36:59 +0000
Module Name: src
Committed By: martin
Date: Mon Oct 9 13:36:59 UTC 2023
Modified Files:
src/sys/arch/powerpc/oea [netbsd-10]: pmap.c
Log Message:
Pull up following revision(s) (requested by rin in ticket #400):
sys/arch/powerpc/oea/pmap.c: revision 1.115
powerpc/oea: pmap: Use pool_allocator_nointr() for pmap_pool
As done for (majority of) other pmap implementations.
pmap_pool_allocator() allocates memory below 256MB, but it is not
necessary for struct pmap.
Fix part of PR kern/57621, i.e., stall in pmap_create(9).
There should be another bugs that cause (MP?) kernel hangs
reported in the PR, in pmap or other MD components for powerpc
(PR port-powerpc/56922 should be one of the candidates).
XXX
pmap for powerpc/oea apparently needs some clean ups. But leave it
as is, and pull up this minimum fix to netbsd-10 at the moment.
To generate a diff of this commit:
cvs rdiff -u -r1.114 -r1.114.4.1 src/sys/arch/powerpc/oea/pmap.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
(Contact us)
$NetBSD: query-full-pr,v 1.47 2022/09/11 19:34:41 kim Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2023
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.