NetBSD Problem Report #55029
From msaitoh@execsw.org Fri Feb 28 09:26:44 2020
Return-Path: <msaitoh@execsw.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-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 00C571A9213
for <gnats-bugs@gnats.NetBSD.org>; Fri, 28 Feb 2020 09:26:43 +0000 (UTC)
Message-Id: <20200228092642.2B2CB886133@five.execsw.org>
Date: Fri, 28 Feb 2020 18:26:42 +0900 (JST)
From: msaitoh@execsw.org
Reply-To: msaitoh@execsw.org
To: gnats-bugs@NetBSD.org
Subject: ti with LOCDEBUG panic
X-Send-Pr-Version: 3.95
>Number: 55029
>Category: kern
>Synopsis: ti with LOCDEBUG panic
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: thorpej
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Feb 28 09:30:00 +0000 2020
>Closed-Date: Sat Dec 31 06:21:13 +0000 2022
>Last-Modified: Sat Dec 31 06:21:13 +0000 2022
>Originator: msaitoh@execsw.org
>Release: NetBSD 9.99.48
>Organization:
>Environment:
>Description:
ti(4) with LOCKDEBUG panics when ifconfig ti0 up.
[ 66.5082067] Mutex error: mutex_vector_enter,509: assertion failed: !cpu_intr_p()
[ 66.5082067] lock address : 0xffffffff814e93e8 type : sleep/adaptive
[ 66.5082067] initialized : 0xffffffff809c6f89
[ 66.5082067] shared holds : 0 exclusive: 0
[ 66.5082067] shares wanted: 0 exclusive: 0
[ 66.5082067] relevant cpu : 0 last held: 2
[ 66.5082067] relevant lwp : 0xffff816bd67cf040 last held: 000000000000000000
[ 66.5082067] last locked : 0xffffffff809d009c unlocked*: 0xffffffff809b9471
[ 66.5082067] owner field : 000000000000000000 wait/spin: 0/0
[ 66.5082067] Turnstile: no active turnstile for this lock.
[ 66.5786490] panic: LOCKDEBUG: Mutex error: mutex_vector_enter,509: assertion failed: !cpu_intr_p()
[ 66.5786490] cpu0: Begin traceback...
[ 66.5913011] vpanic() at netbsd:vpanic+0x178
[ 66.5913011] snprintf() at netbsd:snprintf
[ 66.5984877] lockdebug_more() at netbsd:lockdebug_more
[ 66.5984877] mutex_enter() at netbsd:mutex_enter+0x649
[ 66.6082622] uvm_pgflcache_pause() at netbsd:uvm_pgflcache_pause+0x10
[ 66.6082622] uvm_pglistalloc() at netbsd:uvm_pglistalloc+0x99
[ 66.6206478] _bus_dmamem_alloc_range.isra.5() at netbsd:_bus_dmamem_alloc_range.isra.5+0x75
[ 66.6282518] _bus_dma_alloc_bouncebuf() at netbsd:_bus_dma_alloc_bouncebuf+0x77
[ 66.6386151] bus_dmamap_create() at netbsd:bus_dmamap_create+0x1b7
[ 66.6386151] ti_newbuf_std() at netbsd:ti_newbuf_std+0x1a8
[ 66.6486068] ti_intr() at netbsd:ti_intr+0x36d
[ 66.6486068] intr_biglock_wrapper() at netbsd:intr_biglock_wrapper+0x36
[ 66.6589023] Xhandle_ioapic_level1() at netbsd:Xhandle_ioapic_level1+0x75
[ 66.6683497] --- interrupt ---
[ 66.6683497] x86_mwait() at netbsd:x86_mwait+0xd
[ 66.6683497] acpicpu_cstate_idle_enter() at netbsd:acpicpu_cstate_idle_enter+0xd1
[ 66.6800763] acpicpu_cstate_idle() at netbsd:acpicpu_cstate_idle+0xba
[ 66.6896438] idle_loop() at netbsd:idle_loop+0x152
[ 66.6896438] cpu0: End traceback...
>How-To-Repeat:
See above.
>Fix:
Don't allocate dmamem in the interrupt context?
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: kern-bug-people->thorpej
Responsible-Changed-By: thorpej@NetBSD.org
Responsible-Changed-When: Sat, 29 Feb 2020 18:50:48 +0000
Responsible-Changed-Why:
Take.
State-Changed-From-To: open->feedback
State-Changed-By: thorpej@NetBSD.org
State-Changed-When: Sat, 29 Feb 2020 18:52:00 +0000
State-Changed-Why:
Module Name: src
Committed By: thorpej
Date: Sat Feb 29 18:49:53 UTC 2020
Modified Files:
src/sys/dev/pci: if_ti.c if_tireg.h
Log Message:
- Change the definition and usage of TI_HOSTADDR() to allow for 64-bit
DMA addresses. Modeled after similar usage in the bge(4) driver (the
chips supported by bge(4) are descendants of those supported by ti(4)).
- Use the 64-bit PCI DMA tag if available, otherwise we're allocating (and
using) bounce buffers needlessly.
To generate a diff of this commit:
cvs rdiff -u -r1.114 -r1.115 src/sys/dev/pci/if_ti.c
cvs rdiff -u -r1.23 -r1.24 src/sys/dev/pci/if_tireg.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: feedback->closed
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Sat, 31 Dec 2022 06:21:13 +0000
State-Changed-Why:
Feedback timeout; assume the commit fixed the problem.
People were a little busy with other problems in March 2020.
>Unformatted:
(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.