fio: fix dynamic engines soname definition
authorYigal Korman <ykorman@gmail.com>
Mon, 5 Oct 2020 17:08:54 +0000 (20:08 +0300)
committerJens Axboe <axboe@kernel.dk>
Sun, 1 Nov 2020 14:16:16 +0000 (07:16 -0700)
The SONAME of the engines should not match the name of the dependent
library. Otherwise it confuses the dynamic loader into thinking the
dependency is already resolved.

Prefixing the name with fio make more sense here.

Signed-off-by: Yigal Korman <ykorman@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Makefile

index 5ed8a8082331394465d862324dc08bbc821f71ad..48788f240a83f00dd5baab0ceb9438cc75f1b30d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -569,7 +569,7 @@ endif
 
 ifdef CONFIG_DYNAMIC_ENGINES
 engines/lib$(1).so: $$($(1)_OBJS)
-       $$(QUIET_LINK)$(CC) -shared -rdynamic -fPIC -Wl,-soname,lib$(1).so.1 $$($(1)_LIBS) -o $$@ $$<
+       $$(QUIET_LINK)$(CC) -shared -rdynamic -fPIC -Wl,-soname,fio-$(1).so.1 $$($(1)_LIBS) -o $$@ $$<
 endif
 
 clean: FORCE