On Sun, 2014-06-01 at 21:16 -0700, Eric Dumazet wrote:
> On Sun, 2014-05-25 at 17:47 +0300, Amir Vadai wrote:
> > From: Yuval Atias <[email protected]>
> >
> > The “affinity hint” mechanism is used by the user space
> > daemon, irqbalancer, to indicate a preferred CPU mask for irqs.
> > Irqbalancer can use this hint to balance the irqs between the
> > cpus indicated by the mask.
> >
> > We wish the HCA to preferentially map the IRQs it uses to numa cores
> > close to it. To accomplish this, we use cpumask_set_cpu_local_first(), that
> > sets the affinity hint according the following policy:
> > First it maps IRQs to “close” numa cores. If these are exhausted, the
> > remaining IRQs are mapped to “far” numa cores.
> >
> > Signed-off-by: Yuval Atias <[email protected]>
> > Signed-off-by: Amir Vadai <[email protected]>
> > ---
>
> CC [M] drivers/net/ethernet/mellanox/mlx4/en_netdev.o
> drivers/net/ethernet/mellanox/mlx4/en_netdev.c: In function
> ‘mlx4_en_init_affinity_hint’:
> drivers/net/ethernet/mellanox/mlx4/en_netdev.c:1546:23: error: incompatible
> types when assigning to type ‘cpumask_var_t’ from type ‘void *’
> drivers/net/ethernet/mellanox/mlx4/en_netdev.c: In function
> ‘mlx4_en_free_affinity_hint’:
> drivers/net/ethernet/mellanox/mlx4/en_netdev.c:1553:41: error: incompatible
> types when assigning to type ‘cpumask_var_t’ from type ‘void *’
And :
ERROR: "cpumask_set_cpu_local_first"
[drivers/net/ethernet/mellanox/mlx4/mlx4_en.ko] undefined!
$ git grep -n cpumask_set_cpu_local_first
drivers/net/ethernet/mellanox/mlx4/en_netdev.c:1542: if
(cpumask_set_cpu_local_first(ring_idx, numa_node,
include/linux/cpumask.h:260:int cpumask_set_cpu_local_first(int i, int
numa_node, cpumask_t *dstp);
lib/cpumask.c:168: * cpumask_set_cpu_local_first - set i'th cpu with local numa
cpu's first
lib/cpumask.c:182:int cpumask_set_cpu_local_first(int i, int numa_node,
cpumask_t *dstp)
lib/cpumask.c:228:EXPORT_SYMBOL(cpumask_set_cpu_local_first);
Fixes are needed if CONFIG_CPUMASK_OFFSTACK is not used.
$ grep CONFIG_CPUMASK_OFFSTACK .config
$ echo $?
1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/