Subject: Re: MSI-X vector allocation failure in upstream kernel

From: Michael Ellerman <[email-masked]>
Date: Wed, 13 Oct 2010 12:51:28 +1100

On Tue, 2010-10-05 at 10:18 -0700, Anirban Chakraborty wrote:
> Hi All,
> 
> I am trying to test qlcnic driver (for 10Gb QLogic network adapter) on a Power 6 system 
> (IBM P 520, System type 8203) with upstream kernel and I do see that the kernel is 
> not able to allocate any MSI-X vectors. The driver requests for 4 vectors in pci_enable_msix,
> which returns 2.

OK, that's the platform code saying it can only support 2, that seems
low, but it's possible.

>  The driver again attempts, this time for 2 vectors but the kernel can't allocate 
> and it returns a value of 0xfffffffd. 

OK, that's odd. That is -3, which AFAICS we don't return from the linux
code. So it must be coming from firmware? In which case it would be
"parameter error".

> I upgraded the system FW to 01EL350 (from 01EL340) just to make sure
> if MSI-X is enabled in the system.

Is that the latest FW version?

Adding #define DEBUG at the top of arch/powerpc/platforms/pseries/msi.c
will give us lots of useful info.

Or you can enable CONFIG_DYNAMIC_DEBUG, and enable it that way.

cheers