NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/38782: Panic at uvm_swap_markbad when starting Xorg
The following reply was made to PR kern/38782; it has been noted by GNATS.
From: Adam Hoka <adam.hoka%gmail.com@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: Mindaugas Rasiukevicius <rmind%NetBSD.org@localhost>
Subject: Re: kern/38782: Panic at uvm_swap_markbad when starting Xorg
Date: Thu, 29 May 2008 14:02:45 +0200
Mindaugas Rasiukevicius wrote:
> Adam Hoka <adam.hoka%gmail.com@localhost> wrote:
> > > - Can you reproduce this with debugging options enabled?
> > I will try, is DEBUG and -g sufficent?
>
> Yes, and usually DIAGNOSTIC.
>
> > $ sudo vmstat -s -M
> > netbsd.0.core 4096 bytes per page
> > ...
>
> Seems to be swapping a lot.
The exact way to reproduce was to start X (Xfce4), start some heavy apps,
close them, return to tty and start X again.
# gdb /tnf/build/obj/sys/arch/i386/compile/LOCALDEBUG/netbsd.
netbsd.gdb netbsd.map
ld/obj/sys/arch/i386/compile/LOCALDEBUG/netbsd.gdb
<
GNU gdb 6.5
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386--netbsdelf"...
(gdb) target kvm netbsd.1.core
#0 cpu_reboot (howto=256, bootstr=0x0) at
/tnf/src/sys/arch/i386/i386/machdep.c:894
894 doshutdownhooks();
(gdb) bt full
#0 cpu_reboot (howto=256, bootstr=0x0) at
/tnf/src/sys/arch/i386/i386/machdep.c:894
No locals.
#1 0xc01e8032 in db_sync_cmd (addr=-1048243712, have_addr=false,
count=-855283520,
modif=0xcd056880
"@���I�I̸h\005���9�@����h\005�") at
/tnf/src/sys/ddb/db_command.c:1359
No locals.
#2 0xc01e78d7 in db_command (last_cmdp=0xc0c14340) at
/tnf/src/sys/ddb/db_command.c:921
command = (const struct db_command *) 0xc0995b64
list_ent = (struct db_cmd_tbl_en *) 0xc0c14308
list = (struct db_cmd_tbl_en_head *) 0xc0c14300
t = 3
result = 0
modif =
"@���I�I̸h\005���9�@����h\005�\000\000\000\000\001\000\000\000@���\002\000\000\000�h\005��\230\036�\r\000\000\r�����h\005��ke�\000/\000\000�����h\005���\036�\n\000\000\000\r\000\000\000�h\005ͫ\230\036�\n\000\000\000\234j\005�\030i\005�h\231\036��\177���\177��"
addr = -1048243712
count = -855283520
have_addr = false
last_count = -855283520
#3 0xc01e715b in db_command_loop () at /tnf/src/sys/ddb/db_command.c:566
db_jmpbuf = {val = {-867587255, -855283428, -855283384, 1, -855283044,
-1071746804}}
savejmp = (label_t *) 0x0
#4 0xc01eb5c4 in db_trap (type=6, code=0) at /tnf/src/sys/ddb/db_trap.c:101
bkpt = false
watchpt = false
#5 0xc064b4a5 in kdb_trap (type=6, code=0, regs=0xcd056ae4) at
/tnf/src/sys/arch/i386/i386/db_interface.c:233
s = 0
flags = 0
dbreg = {tf_gs = 16, tf_fs = 48, tf_es = 16, tf_ds = 16, tf_edi =
-855282620, tf_esi = 134966084,
tf_ebp = -855282884, tf_ebx = 0, tf_edx = 1, tf_ecx = -855448384, tf_eax =
0, tf_trapno = 6, tf_err = 0,
tf_eip = -1068626997, tf_cs = 8, tf_eflags = 78487, tf_esp = -855282908,
tf_ss = 16, tf_vm86_es = 1,
tf_vm86_ds = -873043160, tf_vm86_fs = -873043160, tf_vm86_gs = 0}
---Type <return> to continue, or q <return> to quit---
#6 0xc0655580 in trap (frame=0xcd056ae4) at
/tnf/src/sys/arch/i386/i386/trap.c:346
l = (struct lwp *) 0xcd02e4c0
p = (struct proc *) 0xcc49a9e0
type = 6
pcb = (struct pcb *) 0xcd056da0
vframe = (struct trapframe *) 0xcd056acc
ksi = {ksi_flags = 1, ksi_list = {cqe_next = 0x0, cqe_prev = 0x0},
ksi_info = {_signo = 0, _code = 1, _errno = 0,
_reason = {_rt = {_pid = 36, _uid = 6, _value = {sival_int = 0, sival_ptr
= 0x0}}, _child = {_pid = 36, _uid = 6,
_status = 0, _utime = 0, _stime = 0}, _fault = {_addr = 0x24, _trap =
6}, _poll = {_band = 36, _fd = 6}}},
ksi_lid = 0}
resume = -1067825294
onfault = (void *) 0x0
error = 14
cr2 = 36
pfail = 192
#7 0xc010cf1f in calltrap ()
No symbol table info available.
#8 0xc04e0bcb in uvm_swap_markbad (startslot=778854656, nslots=1) at
/tnf/src/sys/uvm/uvm_swap.c:1590
sdp = (struct swapdev *) 0x0
#9 0xc04c6073 in uao_get (uobj=0xcbf66b28, offset=0, pps=0xcd056c04,
npagesp=0xcd056c44, centeridx=0, access_type=3,
advice=2, flags=18) at /tnf/src/sys/uvm/uvm_aobj.c:1199
error = 22
aobj = (struct uvm_aobj *) 0xcbf66b28
current_offset = 4096
ptmp = (struct vm_page *) 0xc12d71c0
lcv = 1
gotpages = 4
maxpages = 16
swslot = 778854656
pageidx = 1
done = false
---Type <return> to continue, or q <return> to quit---
#10 0xc04d8f9f in uobj_wirepages (uobj=0xcbf66b28, start=0, end=393216) at
/tnf/src/sys/uvm/uvm_object.c:76
i = 259
npages = 16
error = 1
pgs = {0xc12e2e9c, 0x0 <repeats 15 times>}
pg = (struct vm_page *) 0x0
offset = 0
left = 96
#11 0xc0584639 in sys_shmget (l=0xcd02e4c0, uap=0xcd056d04, retval=0xcd056cfc)
at /tnf/src/sys/kern/sysv_shm.c:730
shmseg = (struct shmid_ds *) 0xcbf3b000
cred = (kauth_cred_t) 0xcc486480
key = 0
size = 4096
error = 0
mode = 0
segnum = 0
lockmem = true
#12 0xc0654eae in syscall (frame=0xcd056d48) at
/tnf/src/sys/arch/i386/i386/syscall.c:102
callp = (const struct sysent *) 0xc0c1f674
l = (struct lwp *) 0xcd02e4c0
error = 0
code = 231
args = {0, 4096, 512, -1148132376, 2, -1146125312, -1077941404, 1,
-1146351816, 12}
rval = {0, 0}
#13 0xc010056d in syscall1 ()
===============================
# vmstat -s -M netbsd.1.core
4096 bytes per page
8 page colors
125492 pages managed
29181 pages free
0 pages paging
1781 pages wired
1 zero pages
1 reserve pagedaemon pages
5 reserve kernel pages
5000 anonymous pages
80547 cached file pages
3226 cached executable pages
64 minimum free pages
85 target free pages
41830 maximum wired pages
1 swap devices
131165 swap pages
0 swap pages in use
1 swap allocations
378400 total faults taken
514654 traps
116207 device interrupts
349015 CPU context switches
263099 software interrupts
2742456 system calls
0 pagein requests
0 pageout requests
184 swap ins
190 swap outs
0 pages swapped in
0 pages swapped out
665 forks total
158 forks blocked parent
158 forks shared address space with parent
3949 pagealloc zero wanted and avail
65583 pagealloc zero wanted and not avail
0 aborts of idle page zeroing
412050 pagealloc desired color avail
3553 pagealloc desired color not avail
0 faults with no memory
0 faults with no anons
0 faults had to wait on pages
0 faults found released page
5686 faults relock (5675 ok)
129209 anon page faults
0 anon retry faults
14638 amap copy faults
71279 neighbour anon page faults
301895 neighbour object page faults
90755 locked pager get faults
5686 unlocked pager get faults
69149 anon faults
7389 anon copy on write faults
81318 object faults
9426 promote copy faults
61358 promote zero fill faults
734 times daemon wokeup
734 revolutions of the clock hand
734 times daemon attempted swapout
214314 pages freed by daemon
331847 pages scanned by daemon
0 anonymous pages scanned by daemon
214314 object pages scanned by daemon
14494 pages reactivated
0 pages found busy by daemon
0 total pending pageouts
386383 pages deactivated
2783035 total name lookups
2425608 good hits
340751 negative hits
249 bad hits
0 false hits
12164 miss
4263 too long
7419 pass2 hits
8764 2passes
cache hits (87% pos + 12% neg) system 0% per-process
deletions 0%, falsehits 0%, toolong 0%
Home |
Main Index |
Thread Index |
Old Index