projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
engine/filecreate: use clat and reads for stats
[fio.git]
/
filesetup.c
diff --git
a/filesetup.c
b/filesetup.c
index c4240d2a8c9bb457ee2c92c9d5a3375a27885795..789f0ed29ea501be4c5e3c3ee895093b305b5787 100644
(file)
--- a/
filesetup.c
+++ b/
filesetup.c
@@
-15,7
+15,6
@@
#include "os/os.h"
#include "hash.h"
#include "lib/axmap.h"
#include "os/os.h"
#include "hash.h"
#include "lib/axmap.h"
-#include "lib/memalign.h"
#ifdef CONFIG_LINUX_FALLOCATE
#include <linux/falloc.h>
#ifdef CONFIG_LINUX_FALLOCATE
#include <linux/falloc.h>
@@
-147,8
+146,6
@@
static int extend_file(struct thread_data *td, struct fio_file *f)
flags |= O_CREAT;
if (new_layout)
flags |= O_TRUNC;
flags |= O_CREAT;
if (new_layout)
flags |= O_TRUNC;
- if (td->o.odirect)
- flags |= OS_O_DIRECT;
#ifdef WIN32
flags |= _O_BINARY;
#ifdef WIN32
flags |= _O_BINARY;
@@
-162,14
+159,8
@@
static int extend_file(struct thread_data *td, struct fio_file *f)
if (err == ENOENT && !td->o.allow_create)
log_err("fio: file creation disallowed by "
"allow_file_create=0\n");
if (err == ENOENT && !td->o.allow_create)
log_err("fio: file creation disallowed by "
"allow_file_create=0\n");
- else {
- if (err == EINVAL && (flags & OS_O_DIRECT))
- log_err("fio: looks like your filesystem "
- "does not support "
- "direct=1/buffered=0\n");
-
+ else
td_verror(td, err, "open");
td_verror(td, err, "open");
- }
return 1;
}
return 1;
}
@@
-196,17
+187,14
@@
static int extend_file(struct thread_data *td, struct fio_file *f)
}
}
}
}
- if (td->o.odirect && !OS_O_DIRECT && fio_set_directio(td, f))
- goto err;
-
left = f->real_file_size;
bs = td->o.max_bs[DDIR_WRITE];
if (bs > left)
bs = left;
left = f->real_file_size;
bs = td->o.max_bs[DDIR_WRITE];
if (bs > left)
bs = left;
- b =
fio_memalign(page_size,
bs);
+ b =
malloc(
bs);
if (!b) {
if (!b) {
- td_verror(td, errno, "
fio_memalign
");
+ td_verror(td, errno, "
malloc
");
goto err;
}
goto err;
}
@@
-259,14
+247,14
@@
static int extend_file(struct thread_data *td, struct fio_file *f)
f->io_size = f->real_file_size;
}
f->io_size = f->real_file_size;
}
- f
io_memfree(b, bs
);
+ f
ree(b
);
done:
return 0;
err:
close(f->fd);
f->fd = -1;
if (b)
done:
return 0;
err:
close(f->fd);
f->fd = -1;
if (b)
- f
io_memfree(b, bs
);
+ f
ree(b
);
return 1;
}
return 1;
}
@@
-1600,7
+1588,8
@@
int add_file(struct thread_data *td, const char *fname, int numjob, int inc)
if (f->filetype == FIO_TYPE_FILE)
td->nr_normal_files++;
if (f->filetype == FIO_TYPE_FILE)
td->nr_normal_files++;
- set_already_allocated(file_name);
+ if (td->o.numjobs > 1)
+ set_already_allocated(file_name);
if (inc)
td->o.nr_files++;
if (inc)
td->o.nr_files++;
@@
-1880,6
+1869,7
@@
int fio_set_directio(struct thread_data *td, struct fio_file *f)
return 0;
#else
return 0;
#else
+ log_err("fio: direct IO is not supported on this host operating system\n");
return -1;
#endif
}
return -1;
#endif
}