NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/55029: ti with LOCDEBUG panic



>Number:         55029
>Category:       kern
>Synopsis:       ti with LOCDEBUG panic
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Feb 28 09:30:00 +0000 2020
>Originator:     msaitoh%execsw.org@localhost
>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?



Home | Main Index | Thread Index | Old Index