On Windows, open() defaults to text mode, causing control characters
to be interpreted. Avoid this by passing the _O_BINARY flag.
Signed-off-by: Jens Axboe <axboe@fb.com>
if (new_layout)
flags |= O_TRUNC;
if (new_layout)
flags |= O_TRUNC;
+#ifdef WIN32
+ flags |= _O_BINARY;
+#endif
+
dprint(FD_FILE, "open file %s, flags %x\n", f->file_name, flags);
f->fd = open(f->file_name, flags, 0644);
if (f->fd < 0) {
dprint(FD_FILE, "open file %s, flags %x\n", f->file_name, flags);
f->fd = open(f->file_name, flags, 0644);
if (f->fd < 0) {
+#ifdef WIN32
+ flags |= _O_BINARY;
+#endif
+
f->fd = open(f->file_name, flags, 0600);
return from_hash;
}
f->fd = open(f->file_name, flags, 0600);
return from_hash;
}
unsigned long seed;
seed = td->rand_seeds[FIO_RAND_BLOCK_OFF];
unsigned long seed;
seed = td->rand_seeds[FIO_RAND_BLOCK_OFF];
if (!lfsr_init(&f->lfsr, blocks, seed, 0))
continue;
} else if (!td->o.norandommap) {
if (!lfsr_init(&f->lfsr, blocks, seed, 0))
continue;
} else if (!td->o.norandommap) {