From 497ff2cea3749c4b3829b285cc7ce57ed47abf6e Mon Sep 17 00:00:00 2001 From: Artem Bityutskiy Date: Wed, 20 Apr 2011 16:08:30 +0300 Subject: fs-tests: integck: iterate for ever in case of power cut testing If the test runs in power-cut testing mode, do not exit in case of EROFS error - but instead re-mount and start again. Signed-off-by: Artem Bityutskiy --- tests/fs-tests/integrity/integck.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c index 136be09..6de4a42 100644 --- a/tests/fs-tests/integrity/integck.c +++ b/tests/fs-tests/integrity/integck.c @@ -2689,7 +2689,27 @@ int main(int argc, char *argv[]) } /* Do the actual test */ - ret = integck(); + while (1) { + ret = integck(); + /* + * Iterate forever only in case of power-cut emulation testing. + */ + if (!args.power_cut_mode) + break; + if (ret && errno != EROFS) + break; + + /* + * The file-system became read-only and we are in power cut + * testing mode. Re-mount the file-system and re-start the + * test. + */ + close_open_files(); + free_fs_info(top_dir); + ret = remount_tested_fs(); + if (ret) + break; + } close_open_files(); free_fs_info(top_dir); -- cgit v1.2.3