From 7dc1183d67b28d228e72a15ba02aaa60f56df0db Mon Sep 17 00:00:00 2001 From: Yigal Korman Date: Fri, 3 Jul 2020 15:38:43 +0300 Subject: [PATCH] fio: better info when engine not found Jens suggested we provide the user with the likely reasons why we failed to load the given engine. This should help better resolve these issues. Signed-off-by: Yigal Korman Signed-off-by: Jens Axboe --- ioengines.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ioengines.c b/ioengines.c index 78262bc1..c1b430a1 100644 --- a/ioengines.c +++ b/ioengines.c @@ -79,10 +79,16 @@ static struct ioengine_ops *find_ioengine(const char *name) static void *dlopen_external(struct thread_data *td, const char *engine) { char engine_path[PATH_MAX]; + void *dlhandle; sprintf(engine_path, "%s/lib%s.so", FIO_EXT_ENG_DIR, engine); - return dlopen(engine_path, RTLD_LAZY); + dlhandle = dlopen(engine_path, RTLD_LAZY); + if (!dlhandle) + log_info("Engine %s not found; Either name is invalid, was not built, or fio-engine-%s package is missing.\n", + engine, engine); + + return dlhandle; } #else #define dlopen_external(td, engine) (NULL) -- 2.25.1