linux/drivers/net/ethernet/mellanox/mlx4
Kleber Sacilotto de Souza 3770699675 mlx4_en: fix allocation of CPU affinity reverse-map
The mlx4_en driver allocates the number of objects for the CPU affinity
reverse-map based on the number of rx rings of the device. However,
mlx4_assign_eq() calls irq_cpu_rmap_add() as many times as IRQ's are
assigned to EQ's, which can be as large as mlx4_dev->caps.comp_pool. If
caps.comp_pool is larger than rx_ring_num we will eventually hit the
BUG_ON() in cpu_rmap_add().

Fix this problem by allocating space for the maximum number of CPU
affinity reverse-map objects we might want to add.

Signed-off-by: Kleber Sacilotto de Souza <klebers@linux.vnet.ibm.com>
Acked-by: Amir Vadai <amirv@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-02-23 13:51:54 -05:00
..
alloc.c mlx4_core: Change bitmap allocator to work in round-robin fashion 2012-05-14 13:44:38 -07:00
catas.c mlx4: Add support for EEH error recovery 2012-07-25 15:24:13 -07:00
cmd.c mlx4_core: Fix potential deadlock in mlx4_eq_int() 2012-11-29 12:14:54 -08:00
cq.c
en_cq.c mlx4: 64-byte CQE/EQE support 2012-11-26 10:19:17 -08:00
en_dcb_nl.c net/mlx4_en: Can set maxrate only for TC0 2012-11-28 11:15:32 -05:00
en_ethtool.c drivers: net: Remove remaining alloc/OOM messages 2013-02-08 17:44:39 -05:00
en_main.c net/mlx4_en: Optimize loopback related checks in data path 2013-02-07 23:26:12 -05:00
en_netdev.c mlx4_en: fix allocation of CPU affinity reverse-map 2013-02-23 13:51:54 -05:00
en_port.c
en_port.h net/mlx4_core: set port QoS attributes 2012-04-05 05:08:03 -04:00
en_resources.c net/mlx4_en: Force user priority by QP attribute 2012-04-05 05:08:03 -04:00
en_rx.c drivers: net: Remove remaining alloc/OOM messages 2013-02-08 17:44:39 -05:00
en_selftest.c net/mlx4_en: Optimize loopback related checks in data path 2013-02-07 23:26:12 -05:00
en_tx.c mlx4_en: Fix BQL reset TX queue call point 2013-02-07 23:33:51 -05:00
eq.c First batch of InfiniBand/RDMA changes for the 3.8 merge window: 2012-12-13 19:19:09 -08:00
fw.c net/mlx4_en: Don't reassign port mac address on firmware that supports it 2013-01-31 12:48:47 -05:00
fw.h net/mlx4_core: Use firmware driven flow steering hash mode 2013-01-31 12:48:47 -05:00
icm.c mlx4_core: Fix integer overflows so 8TBs of memory registration works 2012-09-13 17:52:02 -07:00
icm.h mlx4_core: Fix integer overflows so 8TBs of memory registration works 2012-09-13 17:52:02 -07:00
intf.c mlx4: Use port management change event instead of smp_snoop 2012-07-10 09:47:10 -07:00
Kconfig mlx4_en: Remove remnants of LRO support 2012-11-19 19:13:59 -05:00
main.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-02-08 18:02:14 -05:00
Makefile net/mlx4_en: DCB QoS support 2012-04-05 05:08:04 -04:00
mcg.c net/mlx4_core: Set correctly allow_loopback flag 2013-01-31 12:48:46 -05:00
mlx4_en.h net/mlx4_en: Add unicast MAC filtering 2013-02-07 23:26:13 -05:00
mlx4.h net/mlx4: Move Ethernet related functionality from mlx4_core to mlx4_en 2013-02-07 23:26:12 -05:00
mr.c mlx4_core: Clean up buddy bitmap allocation 2012-08-15 21:05:27 -07:00
pd.c net/mlx4_core: Add XRC domains and counters to resource tracker 2012-05-16 00:56:59 -04:00
port.c net/mlx4: Move Ethernet related functionality from mlx4_core to mlx4_en 2013-02-07 23:26:12 -05:00
profile.c mlx4_core: Fix integer overflow issues around MTT table 2012-08-15 21:05:26 -07:00
qp.c mlx4: Modify proxy/tunnel QP mechanism so that guests do no calculations 2012-09-30 20:33:43 -07:00
reset.c mlx4: Use PCI Express Capability accessors 2012-08-23 10:11:13 -06:00
resource_tracker.c net/mlx4_core: Directly expose fields of HW flow steering rule control segment 2013-01-31 12:48:46 -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