mem: allow virtual memory address hinting
authorBruce Richardson <bruce.richardson@intel.com>
Wed, 12 Feb 2014 13:38:45 +0000 (13:38 +0000)
committerDavid Marchand <david.marchand@6wind.com>
Tue, 25 Feb 2014 20:29:18 +0000 (21:29 +0100)
commit8ea9ff834f5dda801876a0307e6e8941148f8c6d
treee03364bf09ad37236f25f07adc310e26e334c2e0
parent48a0cc25f1752fab08e0c0c7bef3fb71241cb843
mem: allow virtual memory address hinting

For multi-process applications, it can sometimes occur that part of the
address ranges used for memory mapping in the primary process are not
free in the secondary process, which causes the secondary processes to
abort on startup.
This patch adds in a memory hinting mechanism, where you can hint a
starting base address to the primary process for where you would like
the hugepage memory to be mapped. It is just a hint, so the memory will
not always go exactly where requested, but it should allow the memory
addresses used by a primary process to be adjusted up or down a little,
thereby fixing issues with secondary process startup.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
lib/librte_eal/linuxapp/eal/eal.c
lib/librte_eal/linuxapp/eal/eal_memory.c
lib/librte_eal/linuxapp/eal/include/eal_internal_cfg.h