[dpdk-dev,v1,09/15] malloc: fix the issue of SOCKET_ID_ANY
Commit Message
Add check for rte_socket_id(), avoid get unexpected return like (-1).
Signed-off-by: Cunming Liang <cunming.liang@intel.com>
---
lib/librte_malloc/malloc_heap.h | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
Comments
On Thu, 22 Jan 2015 16:16:32 +0800
Cunming Liang <cunming.liang@intel.com> wrote:
> - return rte_socket_id();
> + unsigned socket_id = rte_socket_id();
> +
> + if (socket_id == (unsigned)SOCKET_ID_ANY)
I prefer not casting -1 to unsigned it will cause warnings.
It is better to make socket_id an integer and then have
the implicit cast in the return.
On Thu, 22 Jan 2015 16:16:32 +0800
Cunming Liang <cunming.liang@intel.com> wrote:
> - return rte_socket_id();
> + unsigned socket_id = rte_socket_id();
> +
> + if (socket_id == (unsigned)SOCKET_ID_ANY)
I prefer not casting -1 to unsigned it will cause warnings.
It is better to make socket_id an integer and then have
the implicit cast in the return
> -----Original Message-----
> From: Stephen Hemminger [mailto:stephen@networkplumber.org]
> Sent: Sunday, January 25, 2015 4:05 PM
> To: Liang, Cunming
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v1 09/15] malloc: fix the issue of SOCKET_ID_ANY
>
> On Thu, 22 Jan 2015 16:16:32 +0800
> Cunming Liang <cunming.liang@intel.com> wrote:
>
> > - return rte_socket_id();
> > + unsigned socket_id = rte_socket_id();
> > +
> > + if (socket_id == (unsigned)SOCKET_ID_ANY)
>
> I prefer not casting -1 to unsigned it will cause warnings.
> It is better to make socket_id an integer and then have
> the implicit cast in the return.
[Liang, Cunming] I didn't got warning about it, in which version of compiler complain it ?
@@ -44,7 +44,12 @@ extern "C" {
static inline unsigned
malloc_get_numa_socket(void)
{
- return rte_socket_id();
+ unsigned socket_id = rte_socket_id();
+
+ if (socket_id == (unsigned)SOCKET_ID_ANY)
+ return 0;
+
+ return socket_id;
}
void *