On Tue, 13 Jan 2015 09:22:00 +0000
Cian Ferriter <cian.ferriter at intel.com> wrote:

> Change the socket id that is passed to rte_memzone_reserve from
> the socket id of current logical core to the socket id of the
> master_lcore.
> ---
>  lib/librte_ether/rte_ethdev.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>  mode change 100644 => 100755 lib/librte_ether/rte_ethdev.c
> 
> diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
> old mode 100644
> new mode 100755
> index 95f2ceb..835540d
> --- a/lib/librte_ether/rte_ethdev.c
> +++ b/lib/librte_ether/rte_ethdev.c
> @@ -184,7 +184,7 @@ rte_eth_dev_data_alloc(void)
>       if (rte_eal_process_type() == RTE_PROC_PRIMARY){
>               mz = rte_memzone_reserve(MZ_RTE_ETH_DEV_DATA,
>                               RTE_MAX_ETHPORTS * sizeof(*rte_eth_dev_data),
> -                             rte_socket_id(), flags);
> +                             rte_lcore_to_socket_id(rte_get_master_lcore()), 
> flags);
>       } else
>               mz = rte_memzone_lookup(MZ_RTE_ETH_DEV_DATA);
>       if (mz == NULL)


Why is this a memzone at all?
Seems like it should be allocated on a per-device basis on the same NUMA node
of the device. Probably with rte_malloc_socket().

Reply via email to