[dpdk-dev] [Bug 20] Undefined behavior caused by NUMA function in eal_memory

bugzilla at dpdk.org bugzilla at dpdk.org
Sun Apr 1 14:30:07 CEST 2018


https://dpdk.org/tracker/show_bug.cgi?id=20

            Bug ID: 20
           Summary: Undefined behavior caused by NUMA function in
                    eal_memory
           Product: DPDK
           Version: unspecified
          Hardware: All
                OS: Linux
            Status: CONFIRMED
          Severity: normal
          Priority: Normal
         Component: core
          Assignee: dev at dpdk.org
          Reporter: solal.pirelli at gmail.com
  Target Milestone: ---

In linuxapp's eal_memory.c, the map_all_hugepages function begins by declaring
and initializing variables, including a nodemask
(http://dpdk.org/browse/dpdk/tree/lib/librte_eal/linuxapp/eal/eal_memory.c?h=v18.02#n344).

However, this initialization occurs before the numa_available function is
called. According to the libnuma documentation
(https://linux.die.net/man/3/numa), all other functions have undefined behavior
if numa_available returns -1.

The initialization of the nodemask needs to be moved after the numa_available
call, and consequently its freeing at the end of the function needs to be
conditional on it not being NULL.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the dev mailing list