msk0: initialization failed: no memory for Rx buffers

Arnaud Lacombe lacombar at gmail.com
Mon Dec 5 22:02:47 UTC 2011


Hi folks,

FWIW, if any developers cares, I'm getting the same problem as Jukka
A. Ukkonen in [0], that is, an msk(4) interface stuck in:

msk0: prefetch unit stuck?
msk0: initialization failed: no memory for Rx buffers

hardware involved here is:

# dmesg
[...]
mskc0: <Marvell Yukon 88E8053 Gigabit Ethernet> port 0xbe00-0xbeff mem
0xfdefc000-0xfdefffff irq 16 at device 0.0 on pci1
msk0: <Marvell Technology Group Ltd. Yukon EC Id 0xb6 Rev 0x02> on mskc0
msk0: Ethernet address: 00:03:2d:09:94:3a
miibus0: <MII bus> on msk0

# pciconf -l
[...]
mskc0 at pci0:1:0:0:       class=0x020000 card=0x43401148 chip=0x436211ab
rev=0x19 hdr=0x00
mskc1 at pci0:2:0:0:       class=0x020000 card=0x43401148 chip=0x436211ab
rev=0x19 hdr=0x00
mskc2 at pci0:3:0:0:       class=0x020000 card=0x43401148 chip=0x436211ab
rev=0x19 hdr=0x00
mskc3 at pci0:4:0:0:       class=0x020000 card=0x43401148 chip=0x436211ab
rev=0x19 hdr=0x00

Memory on the system is fine:

# vmstat
 procs      memory      page                   disk   faults         cpu
 r b w     avm    fre   flt  re  pi  po    fr  sr ad0   in   sy   cs us sy id
 0 0 0  52844K  1957M     0   0   0   0     0   0   0   51   34 4044  0  0 100

# netstat -m
719/946/1665 mbufs in use (current/cache/total)
717/825/1542/262144 mbuf clusters in use (current/cache/total/max)
717/819 mbuf+clusters out of packet secondary zone in use (current/cache)
0/5/5/131072 4k (page size) jumbo clusters in use (current/cache/total/max)
0/0/0/65536 9k jumbo clusters in use (current/cache/total/max)
0/0/0/32768 16k jumbo clusters in use (current/cache/total/max)
1613K/1906K/3520K bytes allocated to network (current/cache/total)
0/0/0 requests for mbufs denied (mbufs/clusters/mbuf+clusters)
0/0/0 requests for jumbo clusters denied (4k/9k/16k)
0/3/6656 sfbufs in use (current/peak/max)
0 requests for sfbufs denied
0 requests for sfbufs delayed
0 requests for I/O initiated by sendfile
0 calls to protocol drain routines

Faulty code is from 8-STABLE, i386, locally built with FLOWTABLES and
ROUTETABLES=8. Jukka's report seems to point out that -current is no
better.

Problem happened after a few minutes of not-so-heavy transfer.

 - Arnaud

[0]: http://lists.freebsd.org/pipermail/freebsd-questions/2011-November/235646.html


More information about the freebsd-net mailing list