Re: [PATCH 5/8] PCI PCIe portdrv: Fix allocation of interrupts

From: Hidetoshi Seto
Date: Thu Jan 15 2009 - 02:39:35 EST


Rafael J. Wysocki wrote:
> On Wednesday 14 January 2009, Rafael J. Wysocki wrote:
>> On Wednesday 14 January 2009, Kenji Kaneshige wrote:
> [...]
>>> I'm sorry but I don't understand what the problem is.
>>> Do you mean pci_disable_msix() doesn't work on some platforms?
>> No, I don't. It was just confusion on my side, sorry.
>>
>> Please have a look at the new version of the patch I sent yesterday
>> (http://marc.info/?l=linux-pci&m=123185510828181&w=4).
>
> BTW, in your patch the first dummy pci_enable_msix() allocates just one
> vector, which means that the contents of both
> msix_entries[idx_hppme].entry and msix_entries[idx_aer].entry will be the same,
> if my reading of the spec (PCI 3.0 in this case) is correct.

According to PCI 3.0 implementation note "Handling MSI-X Vector Shortage,"
it seems your reading is not correct.

Assume that the port have 4 entries([0-3]) in MSI-X table, and that entry[2]
for hotplug/PME and entry[3] for AER, and that kernel only allocates 2 vector.
Spec says that the port could be designed for software to configure entries
assigning vectors{A,B} to multiple entries as ABAB, AABB, ABBB etc.

So if there is just one vector, it could be AAAA.

Thanks,
H.Seto

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/