NetBSD-Bugs archive

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

kern/51045: DRM driver panic if RAM/swap runs out



>Number:         51045
>Category:       kern
>Synopsis:       DRM driver panic if RAM/swap runs out
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Apr 05 12:55:00 +0000 2016
>Originator:     coypu
>Release:        NetBSD-7.99.26
>Organization:
>Environment:
NetBSD  7.99.26 NetBSD 7.99.26 (GENERIC) #5: Sat Apr  2 17:50:15 EDT 2016  maya@ender:/home/maya/obj/sys/arch/amd64/compile/GENERIC amd64
>Description:
VIA K8M800 graphics card, using viadrmums driver (recently fixed by Riastradh, normally not even commented in amd64).

Running out of RAM and swap while Xorg is running and the driver is in use, it will panic.

core and kernel here:
http://coypu.sdf.org/netbsd.drm.core
http://coypu.sdf.org/netbsd.drm

Excerpt from dmesg:

uvm_fault(0xfffffe80025d4170, 0x0, 4) -> e
kernel jumped to null; return addr was 0xffffffff80692b95
fatal page fault in supervisor mode
trap type 6 code 10 rip 0 cs 8 rflags 13246 cr2 0 ilevel 0 rsp fffffe8002674dc0
curlwp 0xfffffe80186f3a80 pid 621.1 lowest kstack 0xfffffe80026712c0
panic: trap
cpu0: Begin traceback...
vpanic() at netbsd:vpanic+0x13c
snprintf() at netbsd:snprintf
startlwp() at netbsd:startlwp
alltraps() at netbsd:alltraps+0x9e
sys_mmap() at netbsd:sys_mmap+0x292
syscall() at netbsd:syscall+0xbe
--- syscall (number 197) ---
7f7ff46fed2a:
cpu0: End traceback...

dumping to dev 0,1 (offset=1134648, size=114319):
dump

dholland says backtrace is bogus (corrupt stack, no path from mmap to startlwp), as it was overwritten.

going based off return address instead:

$ nm -n netbsd.drm |grep ffff80692b
ffffffff80692b41 b drm_fop_mmap
ffffffff80692bec b drm_kqfilter
>How-To-Repeat:

>Fix:



Home | Main Index | Thread Index | Old Index