NetBSD-Bugs archive

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

Re: kern/56764



The following reply was made to PR kern/56764; it has been noted by GNATS.

From: Thomas Klausner <wiz%netbsd.org@localhost>
To: NetBSD bugtracking <gnats-bugs%netbsd.org@localhost>
Cc: 
Subject: Re: kern/56764
Date: Tue, 10 Feb 2026 07:51:00 +0100

 The newly added assertions have been triggered today.
 
 [ 56284.8616186] panic: kernel diagnostic assertion "uvmexp.swpgonly < uvmexp.swpginuse" failed: file "/usr/src/sys/uvm/uvm_pdaemon.c", line 795 swpgonly 18576318 swpginuse 18570395
 
 Kernel backtrace:
 
 (gdb) target kvm netbsd.25.core
 0xffffffff80239eca in cpu_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /usr/src/sys/arch/amd64/amd64/machdep.c:709
 709                     dumpsys();
 (gdb) bt
 #0  0xffffffff80239eca in cpu_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /usr/src/sys/arch/amd64/amd64/machdep.c:709
 #1  0xffffffff80e2be7f in kern_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /usr/src/sys/kern/kern_reboot.c:91
 #2  0xffffffff80e77155 in vpanic (fmt=0xffffffff816ee020 "kernel %sassertion \"%s\" failed: file \"%s\", line %d swpgonly %d swpginuse %d", ap=ap@entry=0xffffad247baabe98) at /usr/src/sys/kern/subr_prf.c:288
 #3  0xffffffff81051bbe in kern_assert (fmt=fmt@entry=0xffffffff816ee020 "kernel %sassertion \"%s\" failed: file \"%s\", line %d swpgonly %d swpginuse %d") at /usr/src/sys/lib/libkern/kern_assert.c:51
 #4  0xffffffff80dd86a3 in uvmpd_scan_queue () at /usr/src/sys/uvm/uvm_pdaemon.c:795
 #5  uvmpd_scan () at /usr/src/sys/uvm/uvm_pdaemon.c:919
 #6  uvm_pageout (arg=<optimized out>) at /usr/src/sys/uvm/uvm_pdaemon.c:318
 #7  0xffffffff80210327 in lwp_trampoline ()
 #8  0x0000000000000000 in ?? ()
 (gdb) fr 4
 #4  0xffffffff80dd86a3 in uvmpd_scan_queue () at /usr/src/sys/uvm/uvm_pdaemon.c:795
 795                                     KASSERTMSG(uvmexp.swpgonly < uvmexp.swpginuse,
 (gdb) l
 790                             } else {
 791                                     slot = uao_find_swslot(uobj, pageidx);
 792                             }
 793                             if (slot > 0) {
 794                                     /* this page is now only in swap. */
 795                                     KASSERTMSG(uvmexp.swpgonly < uvmexp.swpginuse,
 796                                                "swpgonly %d swpginuse %d",
 797                                                uvmexp.swpgonly, uvmexp.swpginuse);
 798                                     atomic_inc_uint(&uvmexp.swpgonly);
 799                             }
 (gdb) p slot
 $1 = <optimized out>
 (gdb) p uvmexp
 $2 = {pagesize = 4096, pagemask = 4095, pageshift = 12, npages = 32315696, free = 792, paging = 0, wired = 4979, ncolors = 32, colormask = 31, zeropages = 0, reserve_pagedaemon = 1, reserve_kernel = 160,
   anonpages = 22220503, filepages = 5515267, execpages = 96251, freemin = 8192, freetarg = 10922, wiredmax = 10771898, nswapdev = 3, swpages = 133993646, swpgavail = 133993646, swpginuse = 18418907,
   swpgonly = 18576494, nswget = 839794, faults = 431457751, traps = 444959363, intrs = 123789873, swtch = 801648567, softs = 196734403, syscalls = 1279015017, pageins = 317835, _unused1 = 0, _unused2 = 0, pgswapin = 0,
   pgswapout = 57374711, forks = 2716424, forks_ppwait = 1178253, forks_sharevm = 1178253, pga_zerohit = 0, pga_zeromiss = 0, zeroaborts = 0, colorhit = -1069245636, colormiss = 155300626, cpuhit = -2103165643,
   cpumiss = 1189220633, fltnoram = 125291247, fltnoanon = 0, fltpgwait = 2919, fltpgrele = 0, fltrelck = 1752063358, fltrelckok = 1752006885, fltanget = 157777663, fltanretry = 386737, fltamcopy = 481707478,
   fltnamap = 144737577, fltnomap = 978014010, fltlget = -2138418117, fltget = 1751675474, flt_anon = 94785099, flt_acow = 62991413, flt_obj = 1814723619, flt_prcopy = 298511667, flt_przero = -1979758914,
   pdwoke = 30586934, pdrevs = 1259, _unused3 = 0, pdfreed = 91987649, pdscans = 120124040, pdanscan = 690052, pdobscan = 91298403, pdreact = 431879, pdbusy = 0, pdpageouts = 3586174, pdpending = 53788537,
   pddeact = 224044232, pdreanon = 0, pdrefile = 0, pdreexec = 0, bootpages = 1009928}
 (gdb) p uvmexp.swpgonly
 $3 = 18576494
 (gdb) p uvmexp.swpginuse
 $4 = 18418907
 
 I don't understand why the numbers here are both different than in the
 panic message itself.
 
 Also, some (unrelated?) values are negative, like:
       colorhit = -1069245636
 which doesn't make sense to me either.
 
 Core dump is available on request.
 
 Cheers,
  Thomas
 


Home | Main Index | Thread Index | Old Index