Greetings.
I have a Dell R710 with a mfi device (PERC 6/i Integrated) that panics almost
immediately on FreeBSD 9. It works fine on FreeBSD 8.2-RELEASE, but I've now
had it panic in FreeBSD 9.0-STABLE and 9.1-RELEASE.
Output of mfiutil show adapter and panic backtrace below. Anybody seen this or
have any ideas?
# mfiutil show adapter:
mfi0 Adapter:
Product Name: PERC 6/i Integrated
Serial Number: <redacted>
Firmware: 6.3.1-0003
RAID Levels: JBOD, RAID0, RAID1, RAID5, RAID6, RAID10, RAID50
Battery Backup: present
NVRAM: 32K
Onboard Memory: 256M
Minimum Stripe: 8K
Maximum Stripe: 1M
# kgdb -n 5
panic: kmem_malloc(-8192): kmem_map too small: 82677760 total allocated
cpuid = 2
KDB: stack backtrace:
#0 0xffffffff809208a6 at kdb_backtrace+0x66
#1 0xffffffff808ea8be at panic+0x1ce
#2 0xffffffff80b44930 at vm_map_locked+0
#3 0xffffffff80b3b41a at uma_large_malloc+0x4a
#4 0xffffffff808d5a69 at malloc+0xd9
#5 0xffffffff805b2985 at mfi_user_command+0x35
#6 0xffffffff805b2f2d at mfi_ioctl+0x2fd
#7 0xffffffff807db28b at devfs_ioctl_f+0x7b
#8 0xffffffff80932325 at kern_ioctl+0x115
#9 0xffffffff8093255d at sys_ioctl+0xfd
#10 0xffffffff80bd7ae6 at amd64_syscall+0x546
#11 0xffffffff80bc3447 at Xfast_syscall+0xf7
Uptime: 35s
Dumping 2032 out of 49122 MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%
(kgdb) lis *0xffffffff805b2985
0xffffffff805b2985 is in mfi_user_command (/usr/src/sys/dev/mfi/mfi.c:2836).
2831 int error = 0, locked;
2832
2833
2834 if (ioc->buf_size > 0) {
2835 ioc_buf = malloc(ioc->buf_size, M_MFIBUF, M_WAITOK);
2836 if (ioc_buf == NULL) {
2837 return (ENOMEM);
2838 }
2839 error = copyin(ioc->buf, ioc_buf, ioc->buf_size);
2840 if (error) {
> Greetings. > > I have a Dell R710 with a mfi device (PERC 6/i Integrated) that panics almost immediately on FreeBSD 9. It works fine on FreeBSD 8.2-RELEASE, but I've now had it panic in FreeBSD 9.0-STABLE and 9.1-RELEASE. > > Output of mfiutil show adapter and panic backtrace below. Anybody seen this or have any ideas? > > # mfiutil show adapter: > mfi0 Adapter: > Product Name: PERC 6/i Integrated > Serial Number: <redacted> > Firmware: 6.3.1-0003 > RAID Levels: JBOD, RAID0, RAID1, RAID5, RAID6, RAID10, RAID50 > Battery Backup: present > NVRAM: 32K > Onboard Memory: 256M > Minimum Stripe: 8K > Maximum Stripe: 1M > > # kgdb -n 5 > panic: kmem_malloc(-8192): kmem_map too small: 82677760 total allocated > cpuid = 2 > KDB: stack backtrace: > #0 0xffffffff809208a6 at kdb_backtrace+0x66 > #1 0xffffffff808ea8be at panic+0x1ce > #2 0xffffffff80b44930 at vm_map_locked+0 > #3 0xffffffff80b3b41a at uma_large_malloc+0x4a > #4 0xffffffff808d5a69 at malloc+0xd9 > #5 0xffffffff805b2985 at mfi_user_command+0x35 > #6 0xffffffff805b2f2d at mfi_ioctl+0x2fd > #7 0xffffffff807db28b at devfs_ioctl_f+0x7b > #8 0xffffffff80932325 at kern_ioctl+0x115 > #9 0xffffffff8093255d at sys_ioctl+0xfd > #10 0xffffffff80bd7ae6 at amd64_syscall+0x546 > #11 0xffffffff80bc3447 at Xfast_syscall+0xf7 > Uptime: 35s > Dumping 2032 out of 49122 MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91% > > (kgdb) lis *0xffffffff805b2985 > 0xffffffff805b2985 is in mfi_user_command (/usr/src/sys/dev/mfi/mfi.c:2836). > 2831 int error = 0, locked; > 2832 > 2833 > 2834 if (ioc->buf_size > 0) { > 2835 ioc_buf = malloc(ioc->buf_size, M_MFIBUF, M_WAITOK); > 2836 if (ioc_buf == NULL) { > 2837 return (ENOMEM); > 2838 } > 2839 error = copyin(ioc->buf, ioc_buf, ioc->buf_size); > 2840 if (error) { >I just upgraded such a box to 9.1-PRERELEASE, can you tell me how to panicit, because so far all seems ok: store-02> uname -aFreeBSD store-02 9.1-PRERELEASE FreeBSD 9.1-PRERELEASE #27: Fri Dec 21 09:11:51 IST 2012 danny at rnd:/home/obj/rnd/r+d/stable/9/sys/HUJI amd64 store-02> mfiutil -u 1 show adapter mfi1 Adapter: Product Name: PERC 6/E Adapter Serial Number: 1122334455667788 Firmware: 6.3.1-0003 RAID Levels: JBOD, RAID0, RAID1, RAID5, RAID6, RAID10, RAID50 Battery Backup: present NVRAM: 32K Onboard Memory: 512M Minimum Stripe: 8k Maximum Stripe: 1M store-02> gpart show => 34 29297213373 mfid0 GPT (13T) 34 128 1 freebsd-boot (64k) 162 4194304 2 freebsd-ufs [bootme] (2.0G) 4194466 100663296 3 freebsd-swap (48G) 104857762 29192355645 4 freebsd-zfs (13T) store-02> zpool status pool: h state: ONLINE status: The pool is formatted using a legacy on-disk format. The pool can still be used, but some features are unavailable. action: Upgrade the pool using 'zpool upgrade'. Once this is done, the pool will no longer be accessible on software that does not support feature flags. scan: scrub repaired 0 in 7h21m with 0 errors on Wed Oct 24 22:57:31 2012 config: NAME STATE READ WRITE CKSUM h ONLINE 0 0 0 gptid/1ef2d5a2-daef-11e1-944e-d067e5e8228e ONLINE 0 0 0 errors: No known data errors
Greetings.
All I have to do to panic it is boot it. As you can see from the dump, it died
after about 30 seconds without me doing anything. I can't provide those
sysctl values easily, as it panics too quickly. I suppose I can convince it to
drop to DDB and pick them out if that would be helpful.
Here they are from the working 8.2-R kernel.
vm.kmem_map_free: 49870348288
vm.kmem_map_size: 68964352
This box, unlike most of our others, doesn't even utilizing ZFS.
root at papa:~# gpart show
=> 63 1141899192 mfid0 MBR (545G)
63 1141884072 1 freebsd [active] (544G)
1141884135 15120 - free - (7.4M)
=> 0 1141884072 mfid0s1 BSD (544G)
0 8388608 1 freebsd-ufs (4.0G)
8388608 16777216 4 freebsd-ufs (8.0G)
25165824 33554432 5 freebsd-ufs (16G)
58720256 67108864 2 freebsd-swap (32G)
125829120 67108864 7 freebsd-swap (32G)
192937984 67108864 8 freebsd-swap (32G)
260046848 881837224 6 freebsd-ufs (420G)
________________________________________
From: Daniel Braniss [danny at cs.huji.ac.il]
Sent: Sunday, December 23, 2012 1:43 AM
To: Sean Kelly
Subject: Re: RELENG_9 panic with PERC 6/i (mfi)
btw:
sysctl -a | grep kmem_map
vm.kmem_map_free: 8859570176
vm.kmem_map_size: 6037008384
danny