[panic] Unknown caching mode 8198 in sys/amd64/amd64/pmap.c
Glen Barber
gjb at FreeBSD.org
Sun Jan 13 18:33:42 UTC 2013
On Sun, Jan 13, 2013 at 07:56:56PM +0200, Konstantin Belousov wrote:
> On Fri, Jan 11, 2013 at 03:09:52PM -0500, Glen Barber wrote:
> > Hi,
> >
> > I'm running a relatively recent -CURRENT:
> >
> > root at nucleus:/usr/obj/usr/src/sys/NUCLEUS # uname -a
> > FreeBSD nucleus 10.0-CURRENT FreeBSD 10.0-CURRENT #50 r244773: Mon Dec
> > 31 16:07:53 EST 2012 root at nucleus:/usr/obj/usr/src/sys/NUCLEUS amd64
> >
> > I ran into this panic twice over the past 24 hours. Both times,
> > Chromium was the program I was actively using, with a few ssh sessions
> > in the background.
> >
> > Below follows kgdb session and hopefully useful information. Any advice
> > on how to further debug this would be appreciated.
> >
> > Glen
> >
> >
> > Script started on Fri Jan 11 14:58:16 2013
> > root at nucleus:/usr/obj/usr/src/sys/NUCLEUS # kgdb kernel.debug /var/crash/vmcore.6
> > GNU gdb 6.1.1 [FreeBSD]
> > Copyright 2004 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 "amd64-marcel-freebsd"...
> >
> > Unread portion of the kernel message buffer:
> > panic: Unknown caching mode 8198
> >
> > cpuid = 3
> > KDB: stack backtrace:
> > #0 0xffffffff80605a76 at kdb_backtrace+0x66
> > #1 0xffffffff805cbbbb at panic+0x13b
> > #2 0xffffffff80879748 at pmap_cache_bits+0x58
> > #3 0xffffffff80880fb4 at pmap_enter+0xa4
> > #4 0xffffffff8084ed25 at vm_fault_hold+0x1a15
> > #5 0xffffffff8084f8d3 at vm_fault+0x73
> > #6 0xffffffff8088593a at trap_pfault+0x13a
> > #7 0xffffffff80886184 at trap+0x4f4
> > #8 0xffffffff8086f853 at calltrap+0x8
> > Uptime: 1d14h30m4s
> > Dumping 4646 out of 7951 MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%
> >
> > Reading symbols from /boot/kernel/zfs.ko...Reading symbols from /bootdir/boot/kernel/zfs.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/zfs.ko
> > Reading symbols from /boot/kernel/opensolaris.ko...Reading symbols from /bootdir/boot/kernel/opensolaris.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/opensolaris.ko
> > Reading symbols from /boot/kernel/geom_eli.ko...Reading symbols from /bootdir/boot/kernel/geom_eli.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/geom_eli.ko
> > Reading symbols from /boot/kernel/linux.ko...Reading symbols from /bootdir/boot/kernel/linux.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/linux.ko
> > Reading symbols from /boot/kernel/coretemp.ko...Reading symbols from /bootdir/boot/kernel/coretemp.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/coretemp.ko
> > Reading symbols from /boot/kernel/acpi_video.ko...Reading symbols from /bootdir/boot/kernel/acpi_video.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/acpi_video.ko
> > Reading symbols from /boot/kernel/sem.ko...Reading symbols from /bootdir/boot/kernel/sem.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/sem.ko
> > Reading symbols from /boot/kernel/acpi_asus.ko...Reading symbols from /bootdir/boot/kernel/acpi_asus.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/acpi_asus.ko
> > Reading symbols from /boot/kernel/aesni.ko...Reading symbols from /bootdir/boot/kernel/aesni.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/aesni.ko
> > Reading symbols from /boot/kernel/pf.ko...Reading symbols from /bootdir/boot/kernel/pf.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/pf.ko
> > Reading symbols from /boot/kernel/i915kms.ko...Reading symbols from /bootdir/boot/kernel/i915kms.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/i915kms.ko
> > Reading symbols from /boot/kernel/iicbb.ko...Reading symbols from /bootdir/boot/kernel/iicbb.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/iicbb.ko
> > Reading symbols from /boot/kernel/iicbus.ko...Reading symbols from /bootdir/boot/kernel/iicbus.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/iicbus.ko
> > Reading symbols from /boot/kernel/iic.ko...Reading symbols from /bootdir/boot/kernel/iic.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/iic.ko
> > Reading symbols from /boot/kernel/agp.ko...Reading symbols from /bootdir/boot/kernel/agp.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/agp.ko
> > Reading symbols from /boot/kernel/drm2.ko...Reading symbols from /bootdir/boot/kernel/drm2.ko.symbols...done.
> > done.
> > Loaded symbols for /boot/kernel/drm2.ko
> > Reading symbols from /usr/local/libexec/linux_adobe/linux_adobe.ko...done.
> > Loaded symbols for /usr/local/libexec/linux_adobe/linux_adobe.ko
> > #0 doadump (textdump=<value optimized out>) at pcpu.h:229
> > 229 __asm("movq %%gs:%1,%0" : "=r" (td)
> > (kgdb) bt
> > #0 doadump (textdump=<value optimized out>) at pcpu.h:229
> > #1 0xffffffff805cb724 in kern_reboot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:446
> > #2 0xffffffff805cbba5 in panic (fmt=<value optimized out>) at /usr/src/sys/kern/kern_shutdown.c:753
> > #3 0xffffffff80879748 in pmap_cache_bits (mode=<value optimized out>, is_pde=<value optimized out>)
> > at /usr/src/sys/amd64/amd64/pmap.c:863
> > #4 0xffffffff80880fb4 in pmap_enter (pmap=0xfffffe01bfa66440, va=34636066816, access=<value optimized out>,
> > m=0xfffffe023dfc1b70, prot=<value optimized out>, wired=<value optimized out>)
> > at /usr/src/sys/amd64/amd64/pmap.c:3456
> > #5 0xffffffff8084ed25 in vm_fault_hold (map=0xfffffe01bfa66310, vaddr=34636066816, fault_type=1 '\001',
> > fault_flags=<value optimized out>, m_hold=0x0) at /usr/src/sys/vm/vm_fault.c:914
> > #6 0xffffffff8084f8d3 in vm_fault (map=0xfffffe01bfa66310, vaddr=34636066816,
> > fault_type=<value optimized out>, fault_flags=0) at /usr/src/sys/vm/vm_fault.c:224
> > #7 0xffffffff8088593a in trap_pfault (frame=0xffffff8239b37ac0, usermode=1)
> > at /usr/src/sys/amd64/amd64/trap.c:756
> > #8 0xffffffff80886184 in trap (frame=0xffffff8239b37ac0) at /usr/src/sys/amd64/amd64/trap.c:363
> > #9 0xffffffff8086f853 in calltrap () at /usr/src/sys/amd64/amd64/exception.S:228
> > #10 0x000000080b0f2200 in ?? ()
> > Previous frame inner to this frame (corrupt stack?)
> > (kgdb) frame 3
> > #3 0xffffffff80879748 in pmap_cache_bits (mode=<value optimized out>, is_pde=<value optimized out>)
> > at /usr/src/sys/amd64/amd64/pmap.c:863
> > 863 panic("Unknown caching mode %d\n", mode);
> > (kgdb) list *0xffffffff80879748
> > 0xffffffff80879748 is at /usr/src/sys/amd64/amd64/pmap.c:863.
> > 858 pmap_cache_bits(int mode, boolean_t is_pde)
> > 859 {
> > 860 int cache_bits, pat_flag, pat_idx;
> > 861
> > 862 if (mode < 0 || mode >= PAT_INDEX_SIZE || pat_index[mode] < 0)
> > 863 panic("Unknown caching mode %d\n", mode);
> > 864
> > 865 /* The PAT bit is different for PTE's and PDE's. */
> > 866 pat_flag = is_pde ? PG_PDE_PAT : PG_PTE_PAT;
> > 867
> > (kgdb) frame 4
> > #4 0xffffffff80880fb4 in pmap_enter (pmap=0xfffffe01bfa66440, va=34636066816, access=<value optimized out>,
> > m=0xfffffe023dfc1b70, prot=<value optimized out>, wired=<value optimized out>)
> > at /usr/src/sys/amd64/amd64/pmap.c:3456
> > 3456 newpte |= pmap_cache_bits(m->md.pat_mode, 0);
> > (kgdb) p *m
> > $1 = {pageq = {tqe_next = 0x0, tqe_prev = 0xffffffff80d2f1b8}, listq = {tqe_next = 0x0,
> > tqe_prev = 0xfffffe023dfc1b08}, left = 0xfffffe023dfc1af8, right = 0x0, object = 0xfffffe00219a93a0,
> > pindex = 2905, phys_addr = 8809881600, md = {pv_list = {tqh_first = 0x0, tqh_last = 0xfffffe023dfc1bb8},
> > pat_mode = 8198}, queue = 255 '?', segind = 10 '\n', hold_count = 0, order = 13 '\r', pool = 0 '\0',
> > cow = 0, wire_count = 0, aflags = 0 '\0', oflags = 1 '\001', flags = 0, act_count = 0 '\0', busy = 0 '\0',
> > valid = 255 '?', dirty = 0 '\0'}
> > (kgdb) list *0xffffffff80880fb4
> > 0xffffffff80880fb4 is in pmap_enter (/usr/src/sys/amd64/amd64/pmap.c:3461).
> > 3456 newpte |= pmap_cache_bits(m->md.pat_mode, 0);
> > 3457
> > 3458 mpte = NULL;
> > 3459
> > 3460 lock = NULL;
> > 3461 rw_rlock(&pvh_global_lock);
> > 3462 PMAP_LOCK(pmap);
> > 3463
> > 3464 /*
> > 3465 * In the case that a page table page is not
> > (kgdb) root at nucleus:/usr/obj/usr/src/sys/NUCLEUS # ^D
> >
> > Script done on Fri Jan 11 14:58:54 2013
>
> Show the output of p *(struct vm_object *)0xfffffe00219a93a0.
> Do you use zfs or drm2/i915 driver ?
>
Yes, I use both drm2/i915 and zfs. Requested kgdb output follows.
Thanks,
Glen
Script started on Sun Jan 13 13:31:20 2013
root at nucleus:/usr/obj/usr/src/sys/NUCLEUS # kgdb kernel.debug /var/crash/vmcore.6
[...]
229 __asm("movq %%gs:%1,%0" : "=r" (td)
(kgdb) p *(struct vm_object *)0xfffffe00219a93a0
$1 = {mtx = {lock_object = {lo_name = 0xffffffff8099b7a2 "vm object", lo_flags = 21168128, lo_data = 0,
lo_witness = 0x0}, mtx_lock = 4}, object_list = {tqe_next = 0xfffffe011479c570,
tqe_prev = 0xfffffe0139f833c0}, shadow_head = {lh_first = 0x0}, shadow_list = {
le_next = 0xfffffe00914d9740, le_prev = 0xfffffe001569ca28}, memq = {tqh_first = 0xfffffe023cec1758,
tqh_last = 0xfffffe023dfc1b80}, root = 0xfffffe023dfc1b70, size = 3026, generation = 1, ref_count = 2,
shadow_count = 0, memattr = 6 '\006', type = 0 '\0', flags = 12288, pg_color = 64558,
paging_in_progress = 1, resident_page_count = 1928, backing_object = 0x0, backing_object_offset = 0,
pager_object_list = {tqe_next = 0x0, tqe_prev = 0x0}, rvq = {lh_first = 0x0}, cache = 0x0, handle = 0x0,
un_pager = {vnp = {vnp_size = 5, writemappings = 0}, devp = {devp_pglist = {tqh_first = 0x5,
tqh_last = 0x0}, ops = 0x0}, sgp = {sgp_pglist = {tqh_first = 0x5, tqh_last = 0x0}}, swp = {
swp_bcount = 5}}, cred = 0xfffffe00155d0c00, charge = 12394496}
(kgdb) root at nucleus:/usr/obj/usr/src/sys/NUCLEUS # ^D
Script done on Sun Jan 13 13:31:46 2013
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-current/attachments/20130113/c19662c3/attachment.sig>
More information about the freebsd-current
mailing list