projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
GPUDirect RDMA support
[fio.git]
/
io_u.c
diff --git
a/io_u.c
b/io_u.c
index 363bfe10283f5043aa8565cd0d5c1236adf5d532..39d68d1f9ae082fc391a66323027ba30157081f4 100644
(file)
--- a/
io_u.c
+++ b/
io_u.c
@@
-899,8
+899,9
@@
static int fill_io_u(struct thread_data *td, struct io_u *io_u)
}
if (io_u->offset + io_u->buflen > io_u->file->real_file_size) {
}
if (io_u->offset + io_u->buflen > io_u->file->real_file_size) {
- dprint(FD_IO, "io_u %p, offset too large\n", io_u);
- dprint(FD_IO, " off=%llu/%lu > %llu\n",
+ dprint(FD_IO, "io_u %p, offset + buflen exceeds file size\n",
+ io_u);
+ dprint(FD_IO, " offset=%llu/buflen=%lu > %llu\n",
(unsigned long long) io_u->offset, io_u->buflen,
(unsigned long long) io_u->file->real_file_size);
return 1;
(unsigned long long) io_u->offset, io_u->buflen,
(unsigned long long) io_u->file->real_file_size);
return 1;
@@
-1653,6
+1654,10
@@
struct io_u *get_io_u(struct thread_data *td)
populate_verify_io_u(td, io_u);
do_scramble = 0;
}
populate_verify_io_u(td, io_u);
do_scramble = 0;
}
+#ifdef CONFIG_CUDA
+ if (td->o.mem_type == MEM_CUDA_MALLOC)
+ do_scramble = 0;
+#endif
} else if (io_u->ddir == DDIR_READ) {
/*
* Reset the buf_filled parameters so next time if the
} else if (io_u->ddir == DDIR_READ) {
/*
* Reset the buf_filled parameters so next time if the
@@
-1673,8
+1678,10
@@
out:
if (!td_io_prep(td, io_u)) {
if (!td->o.disable_lat)
fio_gettime(&io_u->start_time, NULL);
if (!td_io_prep(td, io_u)) {
if (!td->o.disable_lat)
fio_gettime(&io_u->start_time, NULL);
+
if (do_scramble)
small_content_scramble(io_u);
if (do_scramble)
small_content_scramble(io_u);
+
return io_u;
}
err_put:
return io_u;
}
err_put:
@@
-2042,6
+2049,10
@@
void fill_io_buffer(struct thread_data *td, void *buf, unsigned int min_write,
{
struct thread_options *o = &td->o;
{
struct thread_options *o = &td->o;
+#ifdef CONFIG_CUDA
+ if (o->mem_type == MEM_CUDA_MALLOC) return;
+#endif
+
if (o->compress_percentage || o->dedupe_percentage) {
unsigned int perc = td->o.compress_percentage;
struct frand_state *rs;
if (o->compress_percentage || o->dedupe_percentage) {
unsigned int perc = td->o.compress_percentage;
struct frand_state *rs;