Bogus "igb1: Could not setup receive structures" in 8-STABLE

Terry Kennedy TERRY at tmk.com
Fri Oct 15 02:27:26 UTC 2010


> The problem is mbuf resources, the driver is autoconfiguring the number of
> queues based on the number of cores, on newer systems with lots of them
> this is outstripping the mbuf resource pool.

  That would make sense, as these systems have 16 cores (dual E5520's).

> I have decided to hard limit the queues to 8, you can fix the number
> manually
> by searching for num_queues in if_igb.c and setting it to something other
> than
> 0 for now.

  I changed it to 8, and saw the same problem. I noted that the igb boot
messages changed from:

Oct 14 18:28:02 rz1m kernel: igb0: Using MSIX interrupts with 10 vectors
Oct 14 18:28:02 rz1m kernel: igb1: Using MSIX interrupts with 10 vectors

  to:

Oct 14 21:53:44 rz1m kernel: igb0: Using MSIX interrupts with 9 vectors
Oct 14 21:53:44 rz1m kernel: igb1: Using MSIX interrupts with 9 vectors

  So I dropped the value to 3 (on the assumption that the system uses one
more than the specified value per interface), and got:

igb0: Using MSIX interrupts with 4 vectors
igb1: Using MSIX interrupts with 4 vectors

  and both igb interfaces came up. I didn't try to find the maximum
number of queues that would work.

> I am at work on a number of issues with igb and em right now which is why
> there has not been an MFC yet.

  Understood. Thanks for the quick response and workaround.

        Terry Kennedy             http://www.tmk.com
        terry at tmk.com             New York, NY USA


More information about the freebsd-stable mailing list