linux-hardened/drivers/net/ethernet/mellanox/mlx4
Matan Barak 7ae0e400cd net/mlx4_core: Flexible (asymmetric) allocation of EQs and MSI-X vectors for PF/VFs
Previously, the driver queried the firmware in order to get the number
of supported EQs. Under SRIOV, since this was done before the driver
notified the firmware how many VFs it actually needs, the firmware had
to take into account a worst case scenario and always allocated four EQs
per VF, where one was used for events while the others were used for completions.

Now, when the firmware supports the asymmetric allocation scheme, denoted
by exposing num_sys_eqs > 0 (--> MLX4_DEV_CAP_FLAG2_SYS_EQS), we use the
QUERY_FUNC command to query the firmware before enabling SRIOV. Thus we
can get more EQs and MSI-X vectors per function.

Moreover, when running in the new firmware/driver mode, the limitation
that the number of EQs should be a power of two is lifted.

Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Matan Barak <matanb@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-11-13 15:16:21 -05:00
..
alloc.c IB/mlx4: Implement IB_QP_CREATE_USE_GFP_NOIO 2014-06-02 14:58:11 -07:00
catas.c mlx4: Add support for EEH error recovery 2012-07-25 15:24:13 -07:00
cmd.c net/mlx4_core: Refactor mlx4_cmd_init and mlx4_cmd_cleanup 2014-11-13 15:16:17 -05:00
cq.c net/mlx4_en: Don't use irq_affinity_notifier to track changes in IRQ affinity map 2014-07-02 18:29:23 -07:00
en_clock.c net/mlx4_en: Add ethtool support for [rx|tx]vlan offload set to OFF/ON 2014-10-28 17:18:01 -04:00
en_cq.c net/mlx4_en: cq->irq_desc wasn't set in legacy EQ's 2014-07-16 23:28:32 -07:00
en_dcb_nl.c net/mlx4_en: Fix UP limit in ieee_ets->prio_tc 2014-03-02 20:04:00 -05:00
en_ethtool.c net/mlx4_en: Extend checksum offloading by CHECKSUM COMPLETE 2014-11-11 13:20:02 -05:00
en_main.c net/mlx4_en: Cleanups suggested by clang static checker 2014-10-28 17:18:01 -04:00
en_netdev.c net/mlx4_en: Extend checksum offloading by CHECKSUM COMPLETE 2014-11-11 13:20:02 -05:00
en_port.c net/mlx4_en: Extend checksum offloading by CHECKSUM COMPLETE 2014-11-11 13:20:02 -05:00
en_port.h net/mlx4_en: Use PTYS register to query ethtool settings 2014-10-28 17:18:00 -04:00
en_resources.c net/mlx4_en: Add netdev support for TCP/IP offloads of vxlan tunneling 2013-12-31 14:31:43 -05:00
en_rx.c net/mlx4_en: Extend checksum offloading by CHECKSUM COMPLETE 2014-11-11 13:20:02 -05:00
en_selftest.c ethtool, net/mlx4_en: Add 100M, 20G, 56G speeds ethtool reporting support 2014-10-28 17:18:00 -04:00
en_tx.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-11-01 14:53:27 -04:00
eq.c net/mlx4_core: Flexible (asymmetric) allocation of EQs and MSI-X vectors for PF/VFs 2014-11-13 15:16:21 -05:00
fw.c net/mlx4_core: Flexible (asymmetric) allocation of EQs and MSI-X vectors for PF/VFs 2014-11-13 15:16:21 -05:00
fw.h net/mlx4_core: Flexible (asymmetric) allocation of EQs and MSI-X vectors for PF/VFs 2014-11-13 15:16:21 -05:00
icm.c mlx4_core: Fix GFP flags parameters to be gfp_t 2014-06-04 10:19:13 -07:00
icm.h mlx4_core: Fix GFP flags parameters to be gfp_t 2014-06-04 10:19:13 -07:00
intf.c mlx4: Use port management change event instead of smp_snoop 2012-07-10 09:47:10 -07:00
Kconfig net/mlx4: Set proper build dependancy with vxlan 2014-04-01 16:25:51 -04:00
main.c net/mlx4_core: Flexible (asymmetric) allocation of EQs and MSI-X vectors for PF/VFs 2014-11-13 15:16:21 -05:00
Makefile net/mlx4_en: Add HW timestamping (TS) support 2013-04-24 16:30:14 -04:00
mcg.c mlx4: Avoid leaking steering rules on flow creation error flow 2014-10-30 19:48:58 -04:00
mlx4.h net/mlx4_core: Refactor mlx4_cmd_init and mlx4_cmd_cleanup 2014-11-13 15:16:17 -05:00
mlx4_en.h net/mlx4_en: Extend checksum offloading by CHECKSUM COMPLETE 2014-11-11 13:20:02 -05:00
mr.c mlx4: Correct error flows in rereg_mr 2014-09-22 08:47:47 -07:00
pd.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
port.c net/mlx4_core: Introduce mlx4_get_module_info for cable module info reading 2014-10-28 17:17:59 -04:00
profile.c net/mlx4_core: Flexible (asymmetric) allocation of EQs and MSI-X vectors for PF/VFs 2014-11-13 15:16:21 -05:00
qp.c net/mlx4: Set vlan stripping policy by the right command 2014-09-10 15:21:34 -07:00
reset.c mellanox: Logging message cleanups 2014-05-08 23:42:02 -04:00
resource_tracker.c net/mlx4_core: Add retrieval of CONFIG_DEV parameters 2014-11-03 12:28:14 -05:00
sense.c Merge branch 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq 2012-10-02 09:54:49 -07:00
srq.c IB/mlx4: Implement IB_QP_CREATE_USE_GFP_NOIO 2014-06-02 14:58:11 -07:00