[PATCH 0/3] fio: Avoid errno and errno string mismatch

Niklas Cassel <[email protected]> Fri, 6 Feb 2026 17:40:55 +0100
Newsgroups org.kernel.vger.fio
Message-ID <[email protected]>
Hello all,

This series fixes a problem where errno and error string representing that
errno could be out of sync.

Another possible solution is to remove td->verror everywhere and make sure
that the function wants the error string calls strerror() with the errno
when they actually need it. However, that would be a larger change.

Another optimization that could also be done is to look at the places where
we call update_error_count() and td_clear_error(), if we don't set
td->error for a non-fatal error, there is no reason to unconditionally call
td_clear_error() for a non-fatal error. (update_error_count() still has to
be called, as it sets td->first_error.) However, I do not really understand
why update_error_count() + td_clear_error() is called by both:
io_u.c:io_completed() and backend.c:break_on_this_error(), so I avoided to
do this optimization.


Niklas Cassel (3):
  fio: Fix error string not matching errno
  io_u: Fix inconsistent handling of non-fatal errors with option
    error_dump
  stat: Remove duplicate space in __show_run_stats()

 fio.h  |  7 +++----
 io_u.c | 10 ++++++++--
 stat.c |  2 +-
 3 files changed, 12 insertions(+), 7 deletions(-)

-- 
2.53.0