Hi,
This patchset will set affinity hint to influence IRQs to be allocated on the
same NUMA node as the one where the card resides. As discussed in
http://www.spinics.net/lists/netdev/msg271497.html
If number of IRQs allocated is greater than the number of local NUMA cores, all
local cores will be used first, and the rest of the IRQs will be on a remote
NUMA node.
If no NUMA support - IRQ's and cores will be mapped 1:1
The patch was tested and applied on top of commit 750f679 "Merge branch '6lowpan'"
Amir
Changes from V1:
- Patch 1/2: net: Utility function to get affinity_hint by policy
- Fixed error flow to return -EINVAL on error (thanks govind)
- Patch 2/2: net/mlx4_en: Use affinity hint
- Set ring->affinity_hint to NULL on error
Changes from V0:
- Fixed small style issues
Amir Vadai (1):
net: Utility function to get affinity_hint by policy
Yuval Atias (1):
net/mlx4_en: Use affinity hint
drivers/infiniband/hw/mlx4/main.c | 2 +-
drivers/net/ethernet/mellanox/mlx4/en_cq.c | 6 ++-
drivers/net/ethernet/mellanox/mlx4/en_netdev.c | 30 ++++++++++++++
drivers/net/ethernet/mellanox/mlx4/eq.c | 14 ++++++-
drivers/net/ethernet/mellanox/mlx4/mlx4_en.h | 1 +
include/linux/mlx4/device.h | 2 +-
include/linux/netdevice.h | 3 ++
net/core/dev.c | 56 ++++++++++++++++++++++++++
8 files changed, 110 insertions(+), 4 deletions(-)
--
1.8.3.4