t/run-fio-tests: improve error handling
[fio.git] / td_error.h
CommitLineData
3c978125
JA
1#ifndef FIO_TD_ERROR_H
2#define FIO_TD_ERROR_H
3
3d2d14bc
SW
4#include "io_ddir.h"
5
3c978125 6/*
3ed673c6
TK
7 * What type of errors to continue on when continue_on_error is used,
8 * and what type of errors to ignore when ignore_error is used.
3c978125
JA
9 */
10enum error_type_bit {
11 ERROR_TYPE_READ_BIT = 0,
12 ERROR_TYPE_WRITE_BIT = 1,
13 ERROR_TYPE_VERIFY_BIT = 2,
14 ERROR_TYPE_CNT = 3,
15};
16
17enum error_type {
18 ERROR_TYPE_NONE = 0,
19 ERROR_TYPE_READ = 1 << ERROR_TYPE_READ_BIT,
20 ERROR_TYPE_WRITE = 1 << ERROR_TYPE_WRITE_BIT,
21 ERROR_TYPE_VERIFY = 1 << ERROR_TYPE_VERIFY_BIT,
22 ERROR_TYPE_ANY = 0xffff,
23};
24
25enum error_type_bit td_error_type(enum fio_ddir ddir, int err);
26int td_non_fatal_error(struct thread_data *td, enum error_type_bit etype,
27 int err);
28void update_error_count(struct thread_data *td, int err);
29
30#endif