projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
implement 'unit_base' option to select between KB and Kbit et. al.
[fio.git]
/
fio.h
diff --git
a/fio.h
b/fio.h
index 67388ae81ecd86bb18cb382efc5663c87f64b7be..e74bdb3c81e3f8590db68cc0d3158bd9326b2f5b 100644
(file)
--- a/
fio.h
+++ b/
fio.h
@@
-102,11
+102,13
@@
struct thread_options {
char *name;
char *directory;
char *filename;
char *name;
char *directory;
char *filename;
+ char *filename_format;
char *opendir;
char *ioengine;
enum td_ddir td_ddir;
unsigned int rw_seq;
unsigned int kb_base;
char *opendir;
char *ioengine;
enum td_ddir td_ddir;
unsigned int rw_seq;
unsigned int kb_base;
+ unsigned int unit_base;
unsigned int ddir_seq_nr;
long ddir_seq_add;
unsigned int iodepth;
unsigned int ddir_seq_nr;
long ddir_seq_add;
unsigned int iodepth;
@@
-135,7
+137,6
@@
struct thread_options {
unsigned int nr_files;
unsigned int open_files;
enum file_lock_mode file_lock_mode;
unsigned int nr_files;
unsigned int open_files;
enum file_lock_mode file_lock_mode;
- unsigned int lockfile_batch;
unsigned int odirect;
unsigned int invalidate_cache;
unsigned int odirect;
unsigned int invalidate_cache;
@@
-355,6
+356,8
@@
struct thread_data {
uint64_t stat_io_blocks[DDIR_RWDIR_CNT];
struct timeval iops_sample_time;
uint64_t stat_io_blocks[DDIR_RWDIR_CNT];
struct timeval iops_sample_time;
+ volatile int update_rusage;
+ struct fio_mutex *rusage_sem;
struct rusage ru_start;
struct rusage ru_end;
struct rusage ru_start;
struct rusage ru_end;
@@
-684,7
+687,7
@@
extern void fio_options_mem_dupe(struct thread_data *);
extern void options_mem_dupe(void *data, struct fio_option *options);
extern void td_fill_rand_seeds(struct thread_data *);
extern void add_job_opts(const char **);
extern void options_mem_dupe(void *data, struct fio_option *options);
extern void td_fill_rand_seeds(struct thread_data *);
extern void add_job_opts(const char **);
-extern char *num2str(unsigned long, int, int, int);
+extern char *num2str(unsigned long, int, int, int
, int
);
extern int ioengine_load(struct thread_data *);
#define FIO_GETOPT_JOB 0x89000000
extern int ioengine_load(struct thread_data *);
#define FIO_GETOPT_JOB 0x89000000
@@
-806,6
+809,14
@@
static inline int should_check_rate(struct thread_data *td,
return ret;
}
return ret;
}
+static inline unsigned int td_max_bs(struct thread_data *td)
+{
+ unsigned int max_bs;
+
+ max_bs = max(td->o.max_bs[DDIR_READ], td->o.max_bs[DDIR_WRITE]);
+ return max(td->o.max_bs[DDIR_TRIM], max_bs);
+}
+
static inline int is_power_of_2(unsigned int val)
{
return (val != 0 && ((val & (val - 1)) == 0));
static inline int is_power_of_2(unsigned int val)
{
return (val != 0 && ((val & (val - 1)) == 0));