diff options
| author | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2011-04-20 16:08:30 +0300 | 
|---|---|---|
| committer | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2011-04-22 14:29:53 +0300 | 
| commit | 497ff2cea3749c4b3829b285cc7ce57ed47abf6e (patch) | |
| tree | 98bca4cfcafd0c48ae3952e6251f7ba3f57f9257 | |
| parent | 0b2d8813cb2b7344d8dbc35c1d56f525562a221f (diff) | |
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 <Artem.Bityutskiy@nokia.com>
| -rw-r--r-- | tests/fs-tests/integrity/integck.c | 22 | 
1 files changed, 21 insertions, 1 deletions
| 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); | 
