> On May 12, 2017, at 4:42 PM, Bruce Richardson <bruce.richard...@intel.com> > wrote: > > On Thu, May 11, 2017 at 11:03:43PM -0700, Tonghao Zhang wrote: >> If the socket_id is invalid (e.g. -2, -3), the >> memzone_reserve_aligned_thread_unsafe should return the >> EINVAL and not ENOMEM. To avoid it, we should check the >> socket_id before calling malloc_heap_alloc. >> >> Signed-off-by: Tonghao Zhang <n...@opencloud.tech> >> --- >> lib/librte_eal/common/eal_common_memzone.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/lib/librte_eal/common/eal_common_memzone.c >> b/lib/librte_eal/common/eal_common_memzone.c >> index 64f4e0a..3026e36 100644 >> --- a/lib/librte_eal/common/eal_common_memzone.c >> +++ b/lib/librte_eal/common/eal_common_memzone.c >> @@ -189,7 +189,8 @@ >> return NULL; >> } >> >> - if ((socket_id != SOCKET_ID_ANY) && (socket_id >= RTE_MAX_NUMA_NODES)) { >> + if ((socket_id != SOCKET_ID_ANY) && >> + (socket_id >= RTE_MAX_NUMA_NODES || socket_id < 0)) { >> rte_errno = EINVAL; >> return NULL; >> } >> -- > > Looks a sensible thing to do. > > Acked-by: Bruce Richardson <bruce.richard...@intel.com > <mailto:bruce.richard...@intel.com>>
Thanks for your review.