MSI-X limitation in freebsd 8.2
John Baldwin
jhb at freebsd.org
Wed Jun 20 14:55:05 UTC 2012
On Wednesday, June 20, 2012 6:47:34 am Venkat Duvvuru wrote:
> Hi,
> MSI-x supports upto 2048 vectors but what I see in freebsd 8.2 is that when
> I use more than ~30 vectors, system becomes dead slow.
> Is there a limitation on number of msi vectors that can be used in 8.2?
FreeBSD/x86 supports roughly 191 distinct interrupts on each CPU, and each
MSI-X interrupt takes up a single vector on the CPU it resides on. If you
exhaust that set of vectors, then pci_alloc_msix() will fail (or return a
smaller count). However, I haven't seen any issues with the system being slow
with 30 vectors. Are these 30 vectors all tied to a single device, and are
they evenly distributed across the available CPUs? Have you run top when the
system was sluggish to see what each CPU was doing?
--
John Baldwin
More information about the freebsd-net
mailing list