[dpdk-dev] [PATCH 1/2] eal/windows: Add needed calls to detect vdev PMD
Narcisa Ana Maria Vasile
navasile at linux.microsoft.com
Tue Jul 7 02:43:25 CEST 2020
On Wed, Jun 24, 2020 at 05:56:20PM +0300, talshn at mellanox.com wrote:
> From: Tal Shnaiderman <talshn at mellanox.com>
>
> Add needed function calls in rte_eal_init to detect vdev PMD.
>
> eal_option_device_parse()
> rte_service_init()
> rte_bus_probe()
>
> Signed-off-by: Tal Shnaiderman <talshn at mellanox.com>
> ---
> lib/librte_eal/common/meson.build | 1 +
> lib/librte_eal/windows/eal.c | 19 +++++++++++++++++++
> 2 files changed, 20 insertions(+)
>
> diff --git a/lib/librte_eal/common/meson.build b/lib/librte_eal/common/meson.build
Implicit declaration warning:
../lib/librte_eal/windows/eal.c:371:6: warning: implicit declaration of function 'rte_service_init' is invalid in C99 [-Wimplicit-function-declaration]
if (rte_service_init()) {
^
1 warning generated.
Adding "#include <rte_service_component.h>" in windows/eal.c should solve it.
Getting some linker error:
Creating library drivers\librte_bus_vdev.dll.a and object drivers\librte_bus_vdev.dll.exp
bus_vdev_vdev.c.obj : error LNK2019: unresolved external symbol rte_log_register_type_and_pick_level referenced in function __vdev_logtype_bus
drivers\librte_bus_vdev-0.200.3.dll : fatal error LNK1120: 1 unresolved externals
Probably just a missing export for "rte_log_register_type_and_pick_level" in rte_eal_exports.def?
After adding the missing include and export, compilation and linking are successful.
I see some errors when running the app though:
EAL: error allocating rte services array
EAL: FATAL: rte_service_init() failed
EAL: rte_service_init() failed
PANIC in main():
Cannot init EAL
6: [<unknown> (RtlUserThreadStart+0x21)[0x7FFACF283460]]
5: [<unknown> (BaseThreadInitThunk+0x14)[0x7FFACE7A6DF0]]
4: [<missing_symbols>]
3: [<missing_symbols>]
2: [<missing_symbols>]
1: [<missing_symbols>]
More information about the dev
mailing list