Skip to content

Commit

Permalink
Merge branch 'fdp/pid_limit_fix' of https://github.com/ankit-sam/fio
Browse files Browse the repository at this point in the history
* 'fdp/pid_limit_fix' of https://github.com/ankit-sam/fio:
  ioengines: bump up FIO_IOOPS_VERSION
  dataplacement: change log_info to log_err for error messages
  dataplacement: remove FDP_MAX_RUHS
  • Loading branch information
vincentkfu committed Jul 17, 2024
2 parents 791f697 + 72fb820 commit c63e865
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 16 deletions.
27 changes: 13 additions & 14 deletions dataplacement.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ static int init_ruh_info(struct thread_data *td, struct fio_file *f)
log_err("fio: stream IDs must be provided for dataplacement=streams\n");
return -EINVAL;
}
ruhs = scalloc(1, sizeof(*ruhs) + FDP_MAX_RUHS * sizeof(*ruhs->plis));
ruhs = scalloc(1, sizeof(*ruhs) + FIO_MAX_DP_IDS * sizeof(*ruhs->plis));
if (!ruhs)
return -ENOMEM;

Expand All @@ -71,38 +71,37 @@ static int init_ruh_info(struct thread_data *td, struct fio_file *f)
ruhs = calloc(1, sizeof(*ruhs));
ret = fdp_ruh_info(td, f, ruhs);
if (ret) {
log_info("fio: ruh info failed for %s (%d)\n",
f->file_name, -ret);
log_err("fio: ruh info failed for %s (%d)\n",
f->file_name, -ret);
goto out;
}

nr_ruhs = ruhs->nr_ruhs;
ruhs = realloc(ruhs, sizeof(*ruhs) + nr_ruhs * sizeof(*ruhs->plis));
if (!ruhs) {
log_info("fio: ruhs buffer realloc failed for %s\n",
f->file_name);
log_err("fio: ruhs buffer realloc failed for %s\n",
f->file_name);
ret = -ENOMEM;
goto out;
}

ruhs->nr_ruhs = nr_ruhs;
ret = fdp_ruh_info(td, f, ruhs);
if (ret) {
log_info("fio: ruh info failed for %s (%d)\n",
f->file_name, -ret);
log_err("fio: ruh info failed for %s (%d)\n",
f->file_name, -ret);
goto out;
}

if (td->o.dp_nr_ids == 0) {
if (ruhs->nr_ruhs > FDP_MAX_RUHS)
ruhs->nr_ruhs = FDP_MAX_RUHS;
if (ruhs->nr_ruhs > FIO_MAX_DP_IDS)
ruhs->nr_ruhs = FIO_MAX_DP_IDS;
} else {
if (td->o.dp_nr_ids > FDP_MAX_RUHS) {
ret = -EINVAL;
goto out;
}
for (i = 0; i < td->o.dp_nr_ids; i++) {
if (td->o.dp_ids[i] >= ruhs->nr_ruhs) {
log_err("fio: for %s PID index %d must be smaller than %d\n",
f->file_name, td->o.dp_ids[i],
ruhs->nr_ruhs);
ret = -EINVAL;
goto out;
}
Expand Down Expand Up @@ -152,7 +151,7 @@ static int init_ruh_scheme(struct thread_data *td, struct fio_file *f)

if (!scheme_fp) {
log_err("fio: ruh scheme failed to open scheme file %s\n",
td->o.dp_scheme_file);
td->o.dp_scheme_file);
ret = -errno;
goto out;
}
Expand Down
1 change: 0 additions & 1 deletion dataplacement.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@

#define STREAMS_DIR_DTYPE 1
#define FDP_DIR_DTYPE 2
#define FDP_MAX_RUHS 128
#define FIO_MAX_DP_IDS 128
#define DP_MAX_SCHEME_ENTRIES 32

Expand Down
2 changes: 1 addition & 1 deletion ioengines.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "zbd_types.h"
#include "dataplacement.h"

#define FIO_IOOPS_VERSION 34
#define FIO_IOOPS_VERSION 35

#ifndef CONFIG_DYNAMIC_ENGINES
#define FIO_STATIC static
Expand Down

0 comments on commit c63e865

Please sign in to comment.