unlink_file = 1;
if (unlink_file || new_layout) {
+ dprint(FD_FILE, "layout unlink %s\n", f->file_name);
if ((unlink(f->file_name) < 0) && (errno != ENOENT)) {
td_verror(td, errno, "unlink");
return 1;
return 1;
}
- dprint(FD_FILE, "layout unlink %s\n", f->file_name);
static unsigned long long get_rand_file_size(struct thread_data *td)
{
unsigned long long ret, size_d;
num_maps = (blocks + BLOCKS_PER_MAP - 1) /
(unsigned long long) BLOCKS_PER_MAP;
f->file_map = smalloc(num_maps * sizeof(long));
- if (!f->file_map) {
+ if (f->file_map) {
+ f->num_maps = num_maps;
+ continue;
+ }
+ if (!td->o.softrandommap) {
log_err("fio: failed allocating random map. If running"
" a large number of jobs, try the 'norandommap'"
- " option\n");
+ " option or set 'softrandommap'. Or give"
+ " a larger --alloc-size to fio.\n");
return 1;
}
- f->num_maps = num_maps;
+
+ log_info("fio: file %s failed allocating random map. Running "
+ "job without.\n", f->file_name);
+ f->num_maps = 0;
}
return 0;