projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't access dlclose'd dynamic ioengine object after close
[fio.git]
/
fio.h
diff --git
a/fio.h
b/fio.h
index 4d439d988f088fba797ca858a5f0b8b0b1104910..b05cb3dfc395346fe02775e65d7a4fba5288ed43 100644
(file)
--- a/
fio.h
+++ b/
fio.h
@@
-149,6
+149,9
@@
enum {
RATE_PROCESS_LINEAR = 0,
RATE_PROCESS_POISSON = 1,
RATE_PROCESS_LINEAR = 0,
RATE_PROCESS_POISSON = 1,
+
+ THINKTIME_BLOCKS_TYPE_COMPLETE = 0,
+ THINKTIME_BLOCKS_TYPE_ISSUE = 1,
};
enum {
};
enum {
@@
-281,7
+284,6
@@
struct thread_data {
* IO engine private data and dlhandle.
*/
void *io_ops_data;
* IO engine private data and dlhandle.
*/
void *io_ops_data;
- void *io_ops_dlhandle;
/*
* Queue depth of io_u's that fio MIGHT do
/*
* Queue depth of io_u's that fio MIGHT do
@@
-355,6
+357,8
@@
struct thread_data {
struct fio_sem *sem;
uint64_t bytes_done[DDIR_RWDIR_CNT];
struct fio_sem *sem;
uint64_t bytes_done[DDIR_RWDIR_CNT];
+ uint64_t *thinktime_blocks_counter;
+
/*
* State for random io, a bitmap of blocks done vs not done
*/
/*
* State for random io, a bitmap of blocks done vs not done
*/
@@
-757,17
+761,9
@@
static inline bool option_check_rate(struct thread_data *td, enum fio_ddir ddir)
return false;
}
return false;
}
-static inline bool __should_check_rate(struct thread_data *td)
-{
- return (td->flags & TD_F_CHECK_RATE) != 0;
-}
-
static inline bool should_check_rate(struct thread_data *td)
{
static inline bool should_check_rate(struct thread_data *td)
{
- if (!__should_check_rate(td))
- return false;
-
- return ddir_rw_sum(td->bytes_done) != 0;
+ return (td->flags & TD_F_CHECK_RATE) != 0;
}
static inline unsigned long long td_max_bs(struct thread_data *td)
}
static inline unsigned long long td_max_bs(struct thread_data *td)