projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] Add exec_prerun/exec_postrun options
[fio.git]
/
fio.c
diff --git
a/fio.c
b/fio.c
index 82a18fb89f4d05c8b8f2821e0cbaf82b677dc75b..79c11d5cdcee503d879c510e8e57036df421d895 100644
(file)
--- a/
fio.c
+++ b/
fio.c
@@
-1878,6
+1878,9
@@
static void *thread_main(void *data)
gettimeofday(&td->epoch, NULL);
gettimeofday(&td->epoch, NULL);
+ if (td->exec_prerun)
+ system(td->exec_prerun);
+
while (td->loops--) {
getrusage(RUSAGE_SELF, &td->ru_start);
gettimeofday(&td->start, NULL);
while (td->loops--) {
getrusage(RUSAGE_SELF, &td->ru_start);
gettimeofday(&td->start, NULL);
@@
-1922,6
+1925,8
@@
static void *thread_main(void *data)
finish_log(td, td->clat_log, "clat");
if (td->write_iolog)
write_iolog_close(td);
finish_log(td, td->clat_log, "clat");
if (td->write_iolog)
write_iolog_close(td);
+ if (td->exec_postrun)
+ system(td->exec_postrun);
if (exitall_on_terminate)
terminate_threads(td->groupid);
if (exitall_on_terminate)
terminate_threads(td->groupid);
@@
-1937,6
+1942,10
@@
err:
free(td->directory);
if (td->iolog_file)
free(td->iolog_file);
free(td->directory);
if (td->iolog_file)
free(td->iolog_file);
+ if (td->exec_prerun)
+ free(td->exec_prerun);
+ if (td->exec_postrun)
+ free(td->exec_postrun);
cleanup_io(td);
cleanup_io_u(td);
td_set_runstate(td, TD_EXITED);
cleanup_io(td);
cleanup_io_u(td);
td_set_runstate(td, TD_EXITED);