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 <ykorman@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
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)