-----Original Message----- From: Pascal Mazon <pascal.ma...@6wind.com> Date: Friday, February 23, 2018 at 4:53 AM To: "dev@dpdk.org" <dev@dpdk.org>, "Mody, Rasesh" <rasesh.m...@cavium.com>, Harish Patil <harish.pa...@cavium.com>, "Shaikh, Shahed" <shahed.sha...@cavium.com> Cc: "pascal.ma...@6wind.com" <pascal.ma...@6wind.com>, "sta...@dpdk.org" <sta...@dpdk.org> Subject: [PATCH] net/qede: fix alloc from socket 0
>In case osal_dma_alloc_coherent() is called from a management thread, >core_id turn out to be LCORE_ID_ANY, and the resulting socket for alloc >will be socket 0. > >This is not desirable when using a NIC from socket 1 which might very >likely be configured to use memory from that socket only. >In that case, allocation will fail. > >To address this, use master lcore instead when called from mgmt thread. >The associated socket should have memory available. > >Fixes: ec94dbc57362 ("qede: add base driver") >Cc: sta...@dpdk.org > >Signed-off-by: Pascal Mazon <pascal.ma...@6wind.com> >--- > drivers/net/qede/base/bcm_osal.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/drivers/net/qede/base/bcm_osal.c >b/drivers/net/qede/base/bcm_osal.c >index fe42f3256400..0760cdcb9523 100644 >--- a/drivers/net/qede/base/bcm_osal.c >+++ b/drivers/net/qede/base/bcm_osal.c >@@ -133,7 +133,7 @@ void *osal_dma_alloc_coherent(struct ecore_dev *p_dev, > snprintf(mz_name, sizeof(mz_name) - 1, "%lx", > (unsigned long)rte_get_timer_cycles()); > if (core_id == (unsigned int)LCORE_ID_ANY) >- core_id = 0; >+ core_id = rte_get_master_lcore(); > socket_id = rte_lcore_to_socket_id(core_id); > mz = rte_memzone_reserve_aligned(mz_name, size, > socket_id, 0, RTE_CACHE_LINE_SIZE); >-- >2.16.1.72.g5be1f00a9 > Hi Pascal, Looks good. Can you please similar change in osal_dma_alloc_coherent_aligned() also? Thanks. Acked-by: Harish Patil <harish.pa...@cavium.com> >