summaryrefslogtreecommitdiff
path: root/test/Makefile.in
diff options
context:
space:
mode:
authorLeo Yan <leo.yan@linaro.org>2021-06-03 17:59:16 +0800
committerDavid Teigland <teigland@redhat.com>2021-06-03 09:39:32 -0500
commit8c7b2df41fdddcd1b1c504522ab79300882eb72f (patch)
treedce7a70c75319aa46460b5eb6c705be4c4c21144 /test/Makefile.in
parentf83e11ff4332ce7ca24f6bfede4fe60c48123700 (diff)
downloadlvm2-8c7b2df41fdddcd1b1c504522ab79300882eb72f.tar.gz
tests: Support idm failure injection
When the drive failure occurs, the IDM lock manager and lvmlockd should handle this case properly. E.g. when the IDM lock manager detects the lease renewal failure caused by I/O errors, it should invoke the kill path which is predefined by lvmlockd, so that the kill path program (like lvmlockctl) can send requests to lvmlockd to stop and drop lock for the relevant VG/LVs. To verify the failure handling flow, this patch introduces an idm failure injection program, it can input the "percentage" for drive failures so that can emulate different failure cases. Signed-off-by: Leo Yan <leo.yan@linaro.org>
Diffstat (limited to 'test/Makefile.in')
-rw-r--r--test/Makefile.in5
1 files changed, 5 insertions, 0 deletions
diff --git a/test/Makefile.in b/test/Makefile.in
index 662974be6..573df77a7 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -171,6 +171,7 @@ endif
ifeq ("@BUILD_LVMLOCKD@", "yes")
check_lvmlockd_idm: .tests-stamp
+ $(INSTALL_PROGRAM) lib/idm_inject_failure $(EXECDIR)
VERBOSE=$(VERBOSE) ./lib/runner \
--testdir . --outdir $(LVM_TEST_RESULTS) \
--flavours udev-lvmlockd-idm --only shell/aa-lvmlockd-idm-prepare.sh,$(T),shell/zz-lvmlockd-idm-remove.sh --skip $(S)
@@ -269,6 +270,10 @@ lib/securetest: lib/dmsecuretest.o .lib-dir-stamp
@echo " [CC] $@"
$(Q) $(CC) -g $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) -o $@ $< -L$(interfacebuilddir) -ldevmapper $(LIBS)
+lib/idm_inject_failure: lib/idm_inject_failure.o .lib-dir-stamp
+ @echo " [CC] $@"
+ $(Q) $(CC) -g $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) -o $@ $< $(INTERNAL_LIBS) $(LIBS) -lseagate_ilm
+
lib/runner.o: $(wildcard $(srcdir)/lib/*.h)
CFLAGS_runner.o += $(EXTRA_EXEC_CFLAGS)