mem: fix build with -O1
authorOlivier Matz <olivier.matz@6wind.com>
Mon, 19 Sep 2016 12:26:51 +0000 (14:26 +0200)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Thu, 6 Oct 2016 13:23:53 +0000 (15:23 +0200)
When compiled with EXTRA_CFLAGS="-O1", the compiler is not
able to detect that size is always initialized when used, and
issues a wrong warning:

  eal_memory.c: In function ‘rte_eal_hugepage_attach’:
  eal_memory.c:1684:3: error: ‘size’ may be used uninitialized in this
                       function [-Werror=maybe-uninitialized]
     munmap(hp, size);
     ^

Workaround this issue by initializing size to 0.
Seen on gcc (Debian 5.4.1-1) 5.4.1 20160803.

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
lib/librte_eal/linuxapp/eal/eal_memory.c

index bb7a5a7..a956bb2 100644 (file)
@@ -1279,7 +1279,7 @@ rte_eal_hugepage_attach(void)
        unsigned num_hp = 0;
        unsigned i, s = 0; /* s used to track the segment number */
        unsigned max_seg = RTE_MAX_MEMSEG;
-       off_t size;
+       off_t size = 0;
        int fd, fd_zero = -1, fd_hugepage = -1;
 
        if (aslr_enabled() > 0) {