Hello,
Since my bug report, I read the beginning of the man page for crash. I now know
that the ddb log can be retrieved with the dmesg command at the following boot.
The log I attach today must be more accurate than the one I copied by hand last
week. By the way, do I have to launch a trace command for every cpu?
I experienced another way to crash my machine with the same error. While
watching youtube videos with firefox, if I wait for the screen to blank for
inactivity, the sound still works, but if I want to get the screen up again,
the system crashes.
I will read the crash man page ahead, and try to find more information from the
crash dump.
Thanks a lot for your excellent work.
uvm_fault(0xffffff01149b3100, 0x0, 0, 1) -> e
kernel: page fault trap, code=0
Stopped at modeset_lock+0x280: cmpq 0(%rcx),%rax
ddb{2}> PID TID PPID UID S FLAGS WAIT COMMAND
78061 433196 1 0 3 0x80 poll dhclient
34126 472455 1 0 3 0x88 pause xenodm
70907 340867 1 0 3 0x100098 poll cron
29138 366975 1 0 3 0x82 select sshd
44489 451361 45381 83 3 0x100092 poll ntpd
45381 466987 2598 83 3 0x100092 poll ntpd
2598 115622 1 0 3 0x100080 poll ntpd
34199 189443 86390 74 3 0x100092 bpf pflogd
86390 416489 1 0 3 0x80 netio pflogd
64521 218111 26742 73 7 0x100090 syslogd
26742 17186 1 0 3 0x100082 netio syslogd
63714 310792 1 77 7 0x100012 dhclient
19243 442279 53052 115 3 0x100092 kqread slaacd
12583 277585 53052 115 3 0x100092 kqread slaacd
53052 204857 1 0 3 0x80 kqread slaacd
6318 386447 1 0 3 0x80 mfsidl mount_mfs
76321 329072 0 0 3 0x14200 pgzero zerothread
63630 104156 0 0 3 0x14200 aiodoned aiodoned
88096 160213 0 0 3 0x14200 syncer update
91450 478393 0 0 3 0x14200 cleaner cleaner
83032 246855 0 0 3 0x14200 reaper reaper
92348 203341 0 0 3 0x14200 pgdaemon pagedaemon
91153 161723 0 0 3 0x14200 bored crynlk
16030 37873 0 0 3 0x14200 bored crypto
27525 317069 0 0 3 0x14200 usbtsk usbtask
39526 474274 0 0 3 0x14200 usbatsk usbatsk
8430 167508 0 0 3 0x14200 bored i915-hangcheck
28248 485428 0 0 3 0x14200 drmwet i915-dp
60416 219284 0 0 3 0x14200 bored i915
95177 6419 0 0 3 0x40014200 acpi0 acpi0
21703 505538 0 0 3 0x40014200 idle3
53899 30170 0 0 3 0x40014200 idle2
31895 113948 0 0 3 0x40014200 idle1
9917 179954 0 0 3 0x14200 bored sensors
23858 318605 0 0 3 0x14200 bored softnet
53287 463869 0 0 3 0x14200 bored systqmp
67404 332715 0 0 3 0x14200 bored systq
17146 267571 0 0 3 0x40014200 bored softclock
35680 32167 0 0 7 0x40014200 idle0
22084 76656 0 0 3 0x14200 bored sbar
1 254912 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{2}>
modeset_lock(ffff80000023da88,ffff800000cc7000,ffff80000010a200,ffff80000023d9c8)
at modeset_lock+0x280
drm_modeset_lock_all(ffff80000013a100) at drm_modeset_lock_all+0x15f
drm_fb_helper_restore_fbdev_mode_unlocked(ffff80000013a100) at
drm_fb_helper_restore_fbdev_mode_unlocked+0x21
intel_fbdev_restore_mode(3246) at intel_fbdev_restore_mode+0x21
drmclose(ffff800032c23648,ffffff0112657728,ffffff0112657728,1de8) at
drmclose+0x2dc
spec_close(7) at spec_close+0x1c4
VOP_CLOSE(3e50c36ba93d00b2,ffff800032c806d0,ffffff01377d38a0,ffffff0100000007)
at VOP_CLOSE+0x36vn_closefile(ffff800032c806d0,0) at vn_closefile+0xcb
closef(ffff800032c806d0,ffffff0112504530) at closef+0xb3
fdfree(ffff800032bdc8f0) at fdfree+0x5b
exit1(ffff800032c23860,10,ffff800032c806d0) at exit1+0x189
sys_exit(ffffffff815b5973,ffff800032c23790,ffff800032c23860) at sys_exit+0x13
syscall() at syscall+0x270
--- syscall (number 1) ---
end of kernel
end trace frame: 0x7f7ffffccad0, count: -13
0xfda0ce5cf3a:
ddb{2}> syncing disks... panic: assertwaitok: non-zero mutex count: 1
Stopped at db_enter+0x5: popq %rbp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
218111 64521 73 0x100010 0x80 1 syslogd
310792 63714 77 0x100012 0 3 dhclient
db_enter() at db_enter+0x5
panic() at panic+0x128
assertwaitok() at assertwaitok+0x4d
bufq_wait(4) at bufq_wait+0x18
bwrite(ffffff011346d090) at bwrite+0xfa
VOP_BWRITE(3e50c36ba93d00b2) at VOP_BWRITE+0x32
ffs_fsync(ffffffff8100d130) at ffs_fsync+0x198
VOP_FSYNC(3e50c36ba93d00b2,ffffffff81b6e018,ffffff0100000002,ffffff01377d3000)
at VOP_FSYNC+0x36
ffs_sync_vnode(ffff800032c23038,ffffff0108b72898) at ffs_sync_vnode+0x50
vfs_mount_foreach_vnode(2,ffffffff81b6e018,ffff80000087c400) at
vfs_mount_foreach_vnode+0x35
ffs_sync(1018,ffffffff81b6e018,ffff800032c806d0,ffff800032c23310) at
ffs_sync+0x8d
sys_sync(ffffffff81abe9c0,ffffffff81af05f8,4900) at sys_sync+0x75
vfs_shutdown() at vfs_shutdown+0x39
boot(4900) at boot+0x49
end trace frame: 0xffff800032c23110, count: 0
https://www.openbsd.org/ddb.html describes the minimum info required in bug
reports. Insufficient info makes it difficult to find and fix bugs.
ddb{2}>
dumping to dev 4,1 offset 500767