It would be great to have possibility to define number of RxTx queues during module loading. In many cases i need more that 2 per interface to provide scalability.
There is an upper limit of only 3 interrupts per VF. As such more than 2 queues per VF would likely not provide more scalability as you would only ever be able to service 2 queue pairs and the mailbox interrupts in the VF.
Ok. So maybe is the way to serve IRQ by all CPUs not only by one ? When I set smp_affinity to all CPU then only one CPU is used.
Yes you can likely use RFS and RPS (receive flow steering and receive packet steering) functionality in the kernel to distribute work from one interrupt handler to multiple CPUs to complete the work. Smp_affinity only sets a mask of what cpu the interrupt handler can run on, but there is still only 1 or 2 handlers.