We want the threads to inherit any property that could be set while loading a plugin, such as iopl().
Signed-off-by: Damien Millescamps <damien.millescamps at 6wind.com> --- lib/librte_eal/linuxapp/eal/eal.c | 24 ++++++++++++------------ 1 files changed, 12 insertions(+), 12 deletions(-) diff --git a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c index 8ef5671..8cb3f69 100644 --- a/lib/librte_eal/linuxapp/eal/eal.c +++ b/lib/librte_eal/linuxapp/eal/eal.c @@ -687,6 +687,18 @@ rte_eal_init(int argc, char **argv) if (rte_eal_pci_init() < 0) rte_panic("Cannot init PCI\n"); + TAILQ_FOREACH(solib, &solib_list, next) { + solib->lib_handle = dlopen(solib->name, RTLD_NOW); + if ((solib->lib_handle == NULL) && (solib->name[0] != '/')) { + /* relative path: try again with "./" prefix */ + char sopath[PATH_MAX]; + snprintf(sopath, sizeof(sopath), "./%s", solib->name); + solib->lib_handle = dlopen(sopath, RTLD_NOW); + } + if (solib->lib_handle == NULL) + RTE_LOG(WARNING, EAL, "%s\n", dlerror()); + } + RTE_LOG(DEBUG, EAL, "Master core %u is ready (tid=%x)\n", rte_config.master_lcore, (int)thread_id); @@ -712,18 +724,6 @@ rte_eal_init(int argc, char **argv) eal_thread_init_master(rte_config.master_lcore); - TAILQ_FOREACH(solib, &solib_list, next) { - solib->lib_handle = dlopen(solib->name, RTLD_NOW); - if ((solib->lib_handle == NULL) && (solib->name[0] != '/')) { - /* relative path: try again with "./" prefix */ - char sopath[PATH_MAX]; - snprintf(sopath, sizeof(sopath), "./%s", solib->name); - solib->lib_handle = dlopen(sopath, RTLD_NOW); - } - if (solib->lib_handle == NULL) - RTE_LOG(WARNING, EAL, "%s\n", dlerror()); - } - return fctret; } -- 1.7.2.5