Re: [PATCH] msi-x: let drivers retry when not enough vectors
From: Sheng Yang <hidden>
Date: 2009-05-07 09:40:15
On Thursday 07 May 2009 17:27:31 Matthew Wilcox wrote:
On Thu, May 07, 2009 at 04:51:24PM +0800, Sheng Yang wrote:quoted
On Thursday 07 May 2009 16:28:41 Michael S. Tsirkin wrote:quoted
pci_enable_msix currently returns -EINVAL if you ask for more vectors than supported by the device, which would typically cause fallback to regular interrupts. It's better to return the table size, making the driver retry MSI-X with less vectors.Hi Michael I think driver should read from capability list to know how many vector supported by this device before enable MSI-X for device, as pci_msix_table_size() did...I think Michael's patch makes sense. It reduces the amount of work the driver has to do without requiring any additional work in the core. I don't see the disadvantage to it. Reviewed-by: Matthew Wilcox <redacted>
It's indeed weird. Why the semantic of pci_enable_msix can be changed to "enable msix, or tell me how many vector do you have"? You can simply call pci_msix_table_size() to get what you want, also without any more work, no? I can't understand... -- regards Yang, Sheng