All of lore.kernel.org
 help / color / mirror / Atom feed
* Handling MSI-X Vector Shortages
@ 2016-06-15 19:03 Tang, CQ
  2016-07-15 22:05 ` Bjorn Helgaas
  0 siblings, 1 reply; 2+ messages in thread
From: Tang, CQ @ 2016-06-15 19:03 UTC (permalink / raw)
  To: 'linux-pci@vger.kernel.org'

Hi,
              I am writing a driver to deal with MSI-X vector shortage. PCI local bus specification 6.8.3.2 clearly says that, software controlled aliasing can be used to solve the problem, where multiple MSI-X table entries are configured with the same vector.
              pci_enable_msix() call from driver only configure the entries specified in the argument with different vectors. Does Linux provide help function to copy MSI-X table entries? I search the pci/msi source code and don't find an exported function to do that.   
       If there are such function, please tell the function name. if not, can we add such help function?
       Or is driver allowed to access the MSI-X table entries directly, etc, read from one entry (configured by PCI subsystem), and write to another unused entry?

              Thank you very much for the help.

--CQ Tang


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Handling MSI-X Vector Shortages
  2016-06-15 19:03 Handling MSI-X Vector Shortages Tang, CQ
@ 2016-07-15 22:05 ` Bjorn Helgaas
  0 siblings, 0 replies; 2+ messages in thread
From: Bjorn Helgaas @ 2016-07-15 22:05 UTC (permalink / raw)
  To: Tang, CQ; +Cc: linux-pci, Christoph Hellwig, Alexander Gordeev

[+cc Christoph, Alexander]

Best to wrap your emails to fit in 70 columns or so.

On Wed, Jun 15, 2016 at 07:03:09PM +0000, Tang, CQ wrote:
> Hi,
>               I am writing a driver to deal with MSI-X vector shortage. PCI local bus specification 6.8.3.2 clearly says that, software controlled aliasing can be used to solve the problem, where multiple MSI-X table entries are configured with the same vector.
>               pci_enable_msix() call from driver only configure the entries specified in the argument with different vectors. Does Linux provide help function to copy MSI-X table entries? I search the pci/msi source code and don't find an exported function to do that.   

I don't think so.

>        If there are such function, please tell the function name. if not, can we add such help function?
>        Or is driver allowed to access the MSI-X table entries directly, etc, read from one entry (configured by PCI subsystem), and write to another unused entry?

I don't think drivers should fiddle with MSI-X table entries directly.
That sounds like a way to confuse the PCI core.  I added Christoph
and Alexander because they're working on similar issues.

Bjorn

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-07-15 22:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-15 19:03 Handling MSI-X Vector Shortages Tang, CQ
2016-07-15 22:05 ` Bjorn Helgaas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.