"EINVAL", "ENFILE", "EMFILE", "ENOTTY",
"ETXTBSY","EFBIG", "ENOSPC", "ESPIPE",
"EROFS","EMLINK", "EPIPE", "EDOM", "ERANGE" };
- int i = 0, num = sizeof(err) / sizeof(void *);
+ int i = 0, num = sizeof(err) / sizeof(char *);
while (i < num) {
if (!strcmp(err[i], str))
},
},
},
-#endif /* CONFIG_POSIX_FALLOCATE */
+#else /* CONFIG_POSIX_FALLOCATE */
+ {
+ .name = "fallocate",
+ .lname = "Fallocate",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support fallocate",
+ },
+#endif /* CONFIG_POSIX_FALLOCATE */
{
.name = "fadvise_hint",
.lname = "Fadvise hint",
.category = FIO_OPT_C_FILE,
.group = FIO_OPT_G_INVALID,
},
+#else
+ {
+ .name = "fadvise_stream",
+ .lname = "Fadvise stream",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support fadvise stream ID",
+ },
#endif
{
.name = "fsync",
.category = FIO_OPT_C_FILE,
.group = FIO_OPT_G_INVALID,
},
+#else
+ {
+ .name = "sync_file_range",
+ .lname = "Sync file range",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support sync_file_range",
+ },
#endif
{
.name = "direct",
.category = FIO_OPT_C_IO,
.group = FIO_OPT_G_VERIFY,
},
+#else
+ {
+ .name = "verify_async_cpus",
+ .lname = "Async verify CPUs",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support CPU affinities",
+ },
#endif
{
.name = "experimental_verify",
.category = FIO_OPT_C_IO,
.group = FIO_OPT_G_TRIM,
},
+#else
+ {
+ .name = "trim_percentage",
+ .lname = "Trim percentage",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Fio does not support TRIM on your platform",
+ },
+ {
+ .name = "trim_verify_zero",
+ .lname = "Verify trim zero",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Fio does not support TRIM on your platform",
+ },
+ {
+ .name = "trim_backlog",
+ .lname = "Trim backlog",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Fio does not support TRIM on your platform",
+ },
+ {
+ .name = "trim_backlog_batch",
+ .lname = "Trim backlog batch",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Fio does not support TRIM on your platform",
+ },
#endif
{
.name = "write_iolog",
.category = FIO_OPT_C_FILE,
.group = FIO_OPT_G_INVALID,
},
+#else
+ {
+ .name = "ioscheduler",
+ .lname = "I/O scheduler",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support IO scheduler switching",
+ },
#endif
{
.name = "zonesize",
.type = FIO_OPT_INT,
.off1 = td_var_offset(ioprio),
.help = "Set job IO priority value",
- .minval = 0,
- .maxval = 7,
+ .minval = IOPRIO_MIN_PRIO,
+ .maxval = IOPRIO_MAX_PRIO,
.interval = 1,
.category = FIO_OPT_C_GENERAL,
.group = FIO_OPT_G_CRED,
},
+#else
+ {
+ .name = "prio",
+ .lname = "I/O nice priority",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support IO priorities",
+ },
+#endif
+#ifdef FIO_HAVE_IOPRIO_CLASS
+#ifndef FIO_HAVE_IOPRIO
+#error "FIO_HAVE_IOPRIO_CLASS requires FIO_HAVE_IOPRIO"
+#endif
{
.name = "prioclass",
.lname = "I/O nice priority class",
.type = FIO_OPT_INT,
.off1 = td_var_offset(ioprio_class),
.help = "Set job IO priority class",
- .minval = 0,
- .maxval = 3,
+ .minval = IOPRIO_MIN_PRIO_CLASS,
+ .maxval = IOPRIO_MAX_PRIO_CLASS,
.interval = 1,
.category = FIO_OPT_C_GENERAL,
.group = FIO_OPT_G_CRED,
},
+#else
+ {
+ .name = "prioclass",
+ .lname = "I/O nice priority class",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support IO priority classes",
+ },
#endif
{
.name = "thinktime",
.category = FIO_OPT_C_GENERAL,
.group = FIO_OPT_G_CRED,
},
+#else
+ {
+ .name = "cpumask",
+ .lname = "CPU mask",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support CPU affinities",
+ },
+ {
+ .name = "cpus_allowed",
+ .lname = "CPUs allowed",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support CPU affinities",
+ },
+ {
+ .name = "cpus_allowed_policy",
+ .lname = "CPUs allowed distribution policy",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support CPU affinities",
+ },
#endif
#ifdef CONFIG_LIBNUMA
{
.category = FIO_OPT_C_GENERAL,
.group = FIO_OPT_G_INVALID,
},
+#else
+ {
+ .name = "numa_cpu_nodes",
+ .lname = "NUMA CPU Nodes",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Build fio with libnuma-dev(el) to enable this option",
+ },
+ {
+ .name = "numa_mem_policy",
+ .lname = "NUMA Memory Policy",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Build fio with libnuma-dev(el) to enable this option",
+ },
#endif
{
.name = "end_fsync",
{
.name = "exitall_on_error",
.lname = "Exit-all on terminate in error",
- .type = FIO_OPT_BOOL,
- .off1 = td_var_offset(unlink),
+ .type = FIO_OPT_STR_SET,
+ .off1 = td_var_offset(exitall_error),
.help = "Terminate all jobs when one exits in error",
.category = FIO_OPT_C_GENERAL,
.group = FIO_OPT_G_PROCESS,
.category = FIO_OPT_C_LOG,
.group = FIO_OPT_G_INVALID,
},
+#else
+ {
+ .name = "log_compression_cpus",
+ .lname = "Log Compression CPUs",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support CPU affinities",
+ },
#endif
{
.name = "log_store_compressed",
.category = FIO_OPT_C_LOG,
.group = FIO_OPT_G_INVALID,
},
+#else
+ {
+ .name = "log_compression",
+ .lname = "Log compression",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Install libz-dev(el) to get compression support",
+ },
+ {
+ .name = "log_store_compressed",
+ .lname = "Log store compressed",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Install libz-dev(el) to get compression support",
+ },
#endif
{
.name = "block_error_percentiles",
.category = FIO_OPT_C_STAT,
.group = FIO_OPT_G_INVALID,
},
+#else
+ {
+ .name = "disk_util",
+ .lname = "Disk utilization",
+ .type = FIO_OPT_UNSUPPORTED,
+ .help = "Your platform does not support disk utilization",
+ },
#endif
{
.name = "gtod_reduce",